Automatiser le processus de gestion de bibliothèque via des applets de commande Azure PowerShell et des API REST
Vous pouvez gérer vos bibliothèques pour vos pools Apache Spark serverless sans accéder aux pages d’interface utilisateur de Synapse Analytics. Par exemple, il se peut que :
- Vous développez un package personnalisé et souhaitez le charger dans votre espace de travail pour l’utiliser dans votre pool Spark. Et vous souhaitez terminer les étapes sur vos outils locaux sans visiter les interfaces utilisateur de gestion des packages.
- Vous mettez à jour vos packages via le processus CI/CD
Dans cet article, nous allons fournir un guide général pour vous aider à gérer des bibliothèques via des cmdlets Azure PowerShell ou des API REST.
Gérer les packages via des cmdlets Azure PowerShell
Ajouter de nouvelles bibliothèques
La commande New-AzSynapseWorkspacePackage peut être utilisée pour charger de nouvelles bibliothèques dans l’espace de travail.
New-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Package ".\ContosoPackage.whl"
La combinaison de commandes New-AzSynapseWorkspacePackage et Update-AzSynapseSparkPool peut être utilisée pour charger de nouvelles bibliothèques dans l’espace de travail et attacher la bibliothèque à un pool Spark.
$package = New-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Package ".\ContosoPackage.whl" Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Add -Package $package
Si vous souhaitez attacher une bibliothèque d’espaces de travail existante à votre pool Spark, reportez-vous à la combinaison de commandes Get-AzSynapseWorkspacePackage et Update-AzSynapseSparkPool.
$packages = Get-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Add -Package $packages
Supprimer des bibliothèques
Pour supprimer un package installé de votre pool Spark, reportez-vous à la combinaison de commandes Get-AzSynapseWorkspacePackage et Update-AzSynapseSparkPool.
$package = Get-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Name ContosoPackage Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Remove -Package $package
Vous pouvez également récupérer un pool Spark et supprimer toutes les bibliothèques d’espaces de travail jointes du pool en appelant les commandes Get-AzSynapseSparkPool et Update-AzSynapseSparkPool.
$pool = Get-AzSynapseSparkPool -ResourceGroupName ContosoResourceGroup -WorkspaceName ContosoWorkspace -Name ContosoSparkPool $pool | Update-AzSynapseSparkPool -PackageAction Remove -Package $pool.WorkspacePackages
Pour plus de fonctionnalités de cmdlet Azure PowerShell, reportez-vous aux Cmdlets Azure PowerShell pour Azure Synapse Analytics.
Gérer des packages via des API REST
Gérer les packages d’espace de travail
Avec la possibilité d’API REST, vous pouvez ajouter/supprimer des packages ou répertorier tous les fichiers chargés de votre espace de travail. Consultez les API prises en charge complètes, reportez-vous à Vue d’ensemble des API de bibliothèque d’espaces de travail.
Gérer les packages de pool Spark
Vous pouvez tirer parti de l’API REST du pool Spark pour attacher ou supprimer vos bibliothèques personnalisées ou open source à vos pools Spark.
Pour les bibliothèques personnalisées, spécifiez la liste des fichiers personnalisés comme propriété customLibraries dans le corps de la requête.
"customLibraries": [ { "name": "samplejartestfile.jar", "path": "<workspace-name>/libraries/<jar-name>.jar", "containerName": "prep", "uploadedTimestamp": "1970-01-01T00:00:00Z", "type": "jar" } ]
Vous pouvez également mettre à jour vos bibliothèques de pool Spark en spécifiant la propriété libraryRequirements dans le corps de la requête.
"libraryRequirements": { "content": "", "filename": "requirements.txt" }
Étapes suivantes
- Afficher les bibliothèques par défaut : Prise en charge des versions d’Apache Spark
- Gérer les packages au niveau du pool Spark via le portail Synapse Studio : Gestion des packages Python sur la session notebook