Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Une bibliothèque est un package de code réutilisable, tel qu’un package Python à partir de PyPI, un package R de CRAN ou un fichier JAR Java, que vous pouvez importer dans vos notebooks et définitions de travaux Spark pour ajouter des fonctionnalités sans l’écrire à partir de zéro. Microsoft Fabric fournit plusieurs mécanismes pour vous aider à gérer et à utiliser les bibliothèques.
- Bibliothèques intégrées : chaque runtime Fabric Spark fournit un ensemble complet de bibliothèques préinstallées populaires. Vous trouverez la liste complète des bibliothèques prédéfinies dans Fabric Spark Runtime.
- Bibliothèques publiques : les bibliothèques publiques proviennent de dépôts tels que PyPI et Conda, actuellement pris en charge.
- Bibliothèques personnalisées : les bibliothèques personnalisées font référence au code que vous ou votre organisation créez. Fabric les prend en charge dans les formats .whl, .jar et .tar.gz. Fabric prend en charge .tar.gz uniquement pour le langage R. Pour les bibliothèques personnalisées Python, utilisez le format .whl.
Récapitulatif des bonnes pratiques de gestion des bibliothèques
Les scénarios suivants décrivent les meilleures pratiques lors de l’utilisation de bibliothèques dans Microsoft Fabric.
Modes de publication d’environnement (Rapide vs Complet)
Lorsque vous installez des bibliothèques dans un environnement Fabric, vous choisissez un mode de publication qui contrôle la façon dont les bibliothèques sont remises à vos sessions Spark.
- Le mode rapide publie en environ 5 secondes. Les bibliothèques s’installent lorsqu’une session de notebook démarre plutôt que pendant la publication. Si un package en mode rapide porte le même nom qu’un package en mode plein, la version en mode rapide remplace la version en mode plein pour cette session uniquement. Utilisez le mode rapide pour le développement rapide et itératif de notebooks et l’expérimentation à un stade précoce.
- Le mode complet crée un instantané de bibliothèque stable et reproductible. La publication prend généralement 3 à 6 minutes, car le système résout les dépendances et valide la compatibilité. Le démarrage de session ajoute 1 à 3 minutes pour le déploiement de dépendances, en fonction de la taille des dépendances. Utilisez le mode complet pour les pipelines, les exécutions planifiées et les charges de travail partagées qui nécessitent des environnements cohérents et reproductibles.
Mode complet avec un pool live personnalisé
Pour combiner la stabilité du mode Plein avec les démarrages de session rapide, configurez un pool dynamique personnalisé qui s’attache à un environnement en mode plein. Le pool en direct hydrate les clusters avec l’instantané de bibliothèque en mode complet à l'avance, permettant des démarrages de session d'environ 5 secondes tout en préservant l’instantané reproductible.
Pour plus d’informations sur chaque mode, consultez Gérer les bibliothèques dans les environnements Fabric.
Scénario 1 : l'administrateur définit les bibliothèques par défaut pour l'espace de travail
Pour définir les bibliothèques par défaut, vous devez être l'administrateur de l'espace de travail. En tant qu'administrateur, vous pouvez effectuer les tâches suivantes :
- Créer un environnement
- Installer les bibliothèques requises dans l'environnement
- Définir cet environnement comme espace de travail par défaut
Lorsque vos notebooks et définitions de tâches pour Spark sont attachés aux paramètres de l'espace de travail, ils démarrent des sessions avec les bibliothèques installées dans l'environnement par défaut de l'espace de travail.
Scénario 2 : conserver des spécifications de bibliothèque pour un ou plusieurs articles de code
Si vous avez des bibliothèques courantes pour différents éléments de code et que vous n’avez pas besoin de les mettre à jour fréquemment, installez les bibliothèques dans un environnement et attachez-les aux éléments de code.
Le temps de publication dépend du mode que vous choisissez. Le mode rapide publie en environ 5 secondes et installe des bibliothèques au démarrage de session. Le mode complet résout les dépendances et crée un instantané stable ; Il faut généralement 3 à 6 minutes pour publier, et le démarrage de la session ajoute 1 à 3 minutes pour le déploiement de dépendances.
L’avantage de cette approche est que les bibliothèques correctement installées sont garanties d’être disponibles dès le début d’une session Spark, avec l’environnement attaché. Il permet de conserver les bibliothèques courantes pour vos projets et est recommandé pour les scénarios de pipeline en raison de sa stabilité.
Scénario 3 : installation en ligne dans une exécution interactive
Si vous écrivez du code de manière interactive dans un notebook, l’installation inline est la meilleure approche pour ajouter des bibliothèques PyPI ou conda ou valider des bibliothèques personnalisées pour une utilisation unique. Les commandes inline rendent une bibliothèque disponible dans la session Spark de notebook actuelle uniquement . Elles autorisent l’installation rapide, mais la bibliothèque installée ne persiste pas entre les sessions.
Étant donné que %pip install peut générer différentes arborescences de dépendances d’une exécution à l’autre, ce qui peut entraîner des conflits de bibliothèques, les commandes inline sont désactivées par défaut dans les exécutions du pipeline et ne sont pas recommandées pour les pipelines.
Remarque
Les bibliothèques installées via des commandes inline (telles que %pip install ou %conda install) et des bibliothèques ajoutées à partir d’un dossier notebook ou ressources d’environnement sont étendues à la session ou au bloc-notes actif. Ils ne sont pas affectés par la publication d’environnement en mode Rapide ou en mode Complet.
Récapitulatif des types de bibliothèque pris en charge
| Type de la bibliothèque | Gestion des bibliothèques d’environnement | Installation intégrée |
|---|---|---|
| Public Python (PyPI &Conda) | Pris en charge | Pris en charge |
| Python personnalisé (.whl) | Pris en charge | Pris en charge |
| R Public (CRAN) | Non pris en charge | Pris en charge |
| R personnalisé (.tar.gz) | Pris en charge en tant que bibliothèque personnalisée | Pris en charge |
| Jarre | Pris en charge en tant que bibliothèque personnalisée | Pris en charge |
Installation en ligne
Les commandes inline vous permettent de gérer des bibliothèques au sein de sessions de notebook individuelles.
Installation en ligne dans Python
Le système redémarre l’interpréteur Python pour appliquer des modifications de bibliothèque. Toutes les variables définies avant l'exécution de la cellule de commande sont perdues. Placez toutes les commandes pour ajouter, supprimer ou mettre à jour des packages Python au début de votre notebook.
Les commandes inline pour la gestion des bibliothèques Python sont désactivées dans les exécutions de pipeline de notebook par défaut. Pour activer %pip install pour un pipeline, ajoutez _inlineInstallationEnabled en tant que paramètre booléen défini à True dans les paramètres d'activité du notebook.
Remarque
La commande %pip install peut produire des résultats incohérents d'une exécution à l'autre. Installez plutôt des bibliothèques dans un environnement et utilisez l’environnement dans un pipeline.
La %pip install commande n’est pas prise en charge en mode Haute concurrence.
Dans les exécutions de référence de notebook, les commandes inline pour la gestion des bibliothèques Python ne sont pas prises en charge. Supprimez ces commandes inline du bloc-notes référencé pour garantir l’exécution correcte.
Utilisez %pip au lieu de !pip. La !pip commande est une commande d’interpréteur de commandes intégrée IPython avec les limitations suivantes :
-
!pipinstalle un package uniquement sur le nœud du pilote, et non sur les nœuds d’exécuteur. - Les packages installés par le biais de
!pipne prennent pas en compte les conflits avec les packages intégrés ou les packages déjà importés dans un notebook.
%pip gère ces scénarios. Les bibliothèques installées via %pip sont disponibles sur les nœuds de pilote et d’exécuteur et prennent effet même si la bibliothèque est déjà importée.
Conseil
La commande %conda install prend généralement plus de temps que la commande %pip install pour installer de nouvelles bibliothèques Python. Elle vérifie l'ensemble des dépendances et résout les conflits.
Utiliser %conda install pour plus de fiabilité et de stabilité. Utilisez %pip install si vous êtes sûr que la bibliothèque que vous souhaitez installer n’est pas en conflit avec les bibliothèques préinstallées dans l’environnement d’exécution.
Pour toutes les commandes incluses et disponibles dans Python et toutes les précisions nécessaires, consultez Commandes %pip et Commandes %conda.
Gérer les bibliothèques publiques Python via l'installation incluse
Cet exemple montre comment utiliser des commandes inline pour gérer les bibliothèques. Supposons que vous souhaitez utiliser altair, une bibliothèque de visualisation puissante pour Python, pour une exploration de données ponctuelle et que la bibliothèque n’est pas installée dans votre espace de travail. L'exemple suivant utilise les commandes conda pour illustrer les étapes.
Vous pouvez utiliser des commandes en ligne pour activer altair sur votre session de notebook sans affecter les autres sessions du notebook ou d'autres éléments.
Exécutez les commandes suivantes dans une cellule de code du Notebook. La première commande installe la bibliothèque altair. Installez également vega_datasets, qui contient un modèle sémantique que vous pouvez utiliser pour visualiser.
%conda install altair # install latest version through conda command %conda install vega_datasets # install latest version through conda commandLa sortie de la cellule indique le résultat de l'installation.
Importez le package et le modèle sémantique en exécutant le code suivant dans une autre cellule du Notebook.
import altair as alt from vega_datasets import dataVous pouvez à présent expérimenter avec la bibliothèque altair dans le cadre de la session.
# load a simple dataset as a pandas DataFrame cars = data.cars() alt.Chart(cars).mark_point().encode( x='Horsepower', y='Miles_per_Gallon', color='Origin', ).interactive()
Gérer les bibliothèques personnalisées Python grâce à l'installation incluse
Vous pouvez charger vos bibliothèques personnalisées Python dans le dossier ressources de votre notebook ou de l’environnement attaché. Le dossier des ressources est un système de fichiers intégré fourni par chaque notebook et chaque environnement. Pour plus de détails, consultez les Ressources du notebook. Une fois que vous avez chargé une bibliothèque, vous pouvez le faire glisser-déplacer dans une cellule de code pour générer automatiquement la commande d’installation. Vous pouvez également exécuter la commande suivante :
# install the .whl through pip command from the notebook built-in folder
%pip install "builtin/wheel_file_name.whl"
Remarque
Les bibliothèques personnalisées installées à partir du dossier Ressources via des commandes inline sont par session et par notebook. Ils ne sont pas affectés par la publication d’environnement.
Installation intégrée de R
Pour gérer les bibliothèques R, Fabric prend en charge les commandes install.packages(), remove.packages() et devtools::. Pour toutes les commandes en ligne R disponibles et pour obtenir des clarifications, consultez la commande install.packages et la commande remove.package.
Gérer les bibliothèques publiques R via l'installation en ligne
Suivez cet exemple pour découvrir les étapes de l'installation d'une bibliothèque publique R.
Pour installer une bibliothèque de flux R :
Changez la langue de travail en SparkR (R) dans le ruban du Notebook.
Installez la bibliothèque caesar en exécutant la commande suivante dans une cellule de Notebook.
install.packages("caesar")Vous pouvez maintenant vous familiariser avec la bibliothèque caesar limitée à la session à l’aide d’un travail Spark.
library(SparkR) sparkR.session() hello <- function(x) { library(caesar) caesar(x) } spark.lapply(c("hello world", "good morning", "good evening"), hello)
Gérer les bibliothèques Jar via l'installation incluse
Vous pouvez ajouter des fichiers .jar aux sessions de notebook avec la commande suivante.
%%configure -f
{
"conf": {
"spark.jars": "abfss://<<Lakehouse prefix>>.dfs.fabric.microsoft.com/<<path to JAR file>>/<<JAR file name>>.jar",
}
}
La cellule de code précédente utilise le stockage Lakehouse comme exemple. Dans l’Explorateur de blocs-notes, vous pouvez copier le chemin ABFS complet du fichier et le remplacer dans le code.