Automatizzare il processo di gestione delle librerie tramite i cmdlet di Azure PowerShell e le API REST

È possibile gestire le librerie per i pool di Apache Spark serverless senza passare alle pagine dell'interfaccia utente di Synapse Analytics. Ad esempio, è possibile che:

  • si sviluppi un pacchetto personalizzato e si desideri caricarlo nell'area di lavoro e usarlo nel pool di Spark. E si desidera completare i passaggi sugli strumenti locali senza visitare le interfacce utente di gestione dei pacchetti.
  • si stanno aggiornando i pacchetti tramite il processo CI/CD

In questo articolo verrà fornita una guida generale che consente di gestire le librerie tramite i cmdlet di Azure PowerShell o le API REST.

Gestire i pacchetti tramite i cmdlet di Azure PowerShell

Aggiungere nuove librerie

  1. Il comando New-AzSynapseWorkspacePackage può essere usato per caricare nuove librerie nell'area di lavoro.

    New-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Package ".\ContosoPackage.whl"
    
  2. È possibile usare la combinazione di comandi New-AzSynapseWorkspacePackage e Update-AzSynapseSparkPool per caricare nuove librerie nell'area di lavoro e collegare la libreria a un pool di Spark.

    $package = New-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Package ".\ContosoPackage.whl"
    Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Add -Package $package
    
  3. Per collegare una libreria di aree di lavoro esistente al pool di Spark, fare riferimento alla combinazione di comandi Get-AzSynapseWorkspacePackage e Update-AzSynapseSparkPool.

    $packages = Get-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace
    Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Add -Package $packages
    

Rimuovere le librerie

  1. Per rimuovere un pacchetto installato dal pool di Spark, vedere la combinazione di comandi di Get-AzSynapseWorkspacePackage e Update-AzSynapseSparkPool.

    $package = Get-AzSynapseWorkspacePackage -WorkspaceName ContosoWorkspace -Name ContosoPackage
    Update-AzSynapseSparkPool -WorkspaceName ContosoWorkspace -Name ContosoSparkPool -PackageAction Remove -Package $package
    
  2. È anche possibile recuperare un pool di Spark e rimuovere tutte le librerie di aree di lavoro collegate dal pool chiamando i comandi Get-AzSynapseSparkPool e Update-AzSynapseSparkPool.

    $pool = Get-AzSynapseSparkPool -ResourceGroupName ContosoResourceGroup -WorkspaceName ContosoWorkspace -Name ContosoSparkPool
    $pool | Update-AzSynapseSparkPool -PackageAction Remove -Package $pool.WorkspacePackages
    

Per altre funzionalità dei cmdlet di Azure PowerShell, vedere Cmdlet di Azure PowerShell per Azure Synapse Analytics.

Gestire i pacchetti tramite le API REST

Gestire i pacchetti dell'area di lavoro

Con le API REST è possibile aggiungere/eliminare pacchetti o elencare tutti i file caricati dell'area di lavoro. Vedere le API supportate complete; fare riferimento alla Panoramica delle API della libreria dell'area di lavoro.

Gestire i pacchetti del pool di Spark

È possibile sfruttare l'API REST del pool di Spark per collegare o rimuovere librerie personalizzate o open source nei pool di Spark.

  1. Per le librerie personalizzate, specificare l'elenco di file personalizzati come proprietà customLibraries nel corpo della richiesta.

    "customLibraries": [
        {
            "name": "samplejartestfile.jar",
            "path": "<workspace-name>/libraries/<jar-name>.jar",
            "containerName": "prep",
            "uploadedTimestamp": "1970-01-01T00:00:00Z",
            "type": "jar"
        }
    ]
    
  2. È anche possibile aggiornare le librerie del pool di Spark specificando la proprietà libraryRequirements nel corpo della richiesta.

    "libraryRequirements": {
          "content": "",
          "filename": "requirements.txt"
    }
    

Passaggi successivi