Condividi tramite


Trasformare i dati eseguendo un'attività di Python in Azure Databricks

APPLICABILE A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Data Factory in Microsoft Fabric è la nuova generazione di Azure Data Factory, con un'architettura più semplice, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con l'integrazione dei dati, iniziare con Fabric Data Factory. I carichi di lavoro di Azure Data Factory esistenti possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.

L'attività Python di Azure Databricks in un pipeline esegue uno script Python nel cluster Azure Databricks. Questo articolo si basa sull'articolo relativo alle attività di trasformazione dei dati che presenta una panoramica generale della trasformazione dei dati e le attività di trasformazione supportate. Azure Databricks è una piattaforma gestita per l'esecuzione di Apache Spark.

Per un'introduzione di undici minuti e una dimostrazione di questa funzionalità, guardare il video seguente:

Aggiungere un'attività Python per Azure Databricks a una pipeline con l'interfaccia utente

Per usare un'attività Python per Azure Databricks in una pipeline, seguire questa procedura:

  1. Cercare Python nel riquadro Attività pipeline e trascinare un'attività Python nell'area di disegno della pipeline.

  2. Selezionare la nuova attività Python nell'area di disegno, se non è già selezionata.

  3. Selezionare la scheda Azure Databricks per selezionare o creare un nuovo servizio collegato Azure Databricks che eseguirà l'attività Python.

     Mostra l'interfaccia utente per un'attività Python.

  4. Selezionare la scheda Settings e specificare il percorso all'interno di Azure Databricks a un file Python da eseguire, i parametri facoltativi da passare e le eventuali librerie aggiuntive da installare nel cluster per eseguire il processo.

     Mostra l'interfaccia utente per la scheda Impostazioni per un'attività Python.

Definizione di attività di Databricks Python

Di seguito è riportata la definizione JSON di esempio di un'attività di databricks Python:

{
    "activity": {
        "name": "MyActivity",
        "description": "MyActivity description",
        "type": "DatabricksSparkPython",
        "linkedServiceName": {
            "referenceName": "MyDatabricksLinkedService",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "pythonFile": "dbfs:/docs/pi.py",
            "parameters": [
                "10"
            ],
            "libraries": [
                {
                    "pypi": {
                        "package": "tensorflow"
                    }
                }
            ]
        }
    }
}

Proprietà dell'attività di Databricks Python

La tabella seguente fornisce le descrizioni delle proprietà JSON usate nella definizione JSON:

Proprietà Descrizione Richiesto
nome Nome dell'attività nella pipeline.
descrizione Testo che descrive l'attività. No
tipo Per Databricks Python Activity, il tipo di attività è DatabricksSparkPython.
nomeServizioCollegato Nome del servizio collegato Databricks in cui viene eseguita l'attività Python. Per informazioni su questo servizio collegato, vedere l'articolo Servizi collegati di calcolo.
pythonFile URI del file Python da eseguire. Sono supportati solo i percorsi DBFS.
parametri Parametri della riga di comando che verranno passati al file Python. È una matrice di stringhe. No
librerie Un elenco di librerie da installare nel cluster che eseguirà il processo. Può essere una matrice di <stringhe, oggetto> No

Librerie supportate per le Attività di Databricks

Nella definizione dell'attività di Databricks precedente si specificano questi tipi di libreria: jar, egg, maven, pypi, cran.

{
    "libraries": [
        {
            "jar": "dbfs:/mnt/libraries/library.jar"
        },
        {
            "egg": "dbfs:/mnt/libraries/library.egg"
        },
        {
            "maven": {
                "coordinates": "org.jsoup:jsoup:1.7.2",
                "exclusions": [ "slf4j:slf4j" ]
            }
        },
        {
            "pypi": {
                "package": "simplejson",
                "repo": "http://my-pypi-mirror.com"
            }
        },
        {
            "cran": {
                "package": "ada",
                "repo": "https://cran.us.r-project.org"
            }
        }
    ]
}

Per altre informazioni, consultare la documentazione di Databricks per i tipi di libreria.

Come caricare una libreria in Databricks

È possibile usare l'interfaccia utente dell'area di lavoro:

  1. Usare l'interfaccia utente dell'area di lavoro di Databricks

  2. Per ottenere il percorso dbfs della libreria aggiunto tramite l'interfaccia utente, è possibile usare l'interfaccia della riga di comando di Databricks.

    In genere le librerie Jar sono archiviate in dbfs:/FileStore/jars quando si usa l'interfaccia utente. È possibile elencarle tutte tramite l'interfaccia della riga di comando: databricks fs ls dbfs:/FileStore/job-jars

In alternativa, è possibile usare l'interfaccia della riga di comando di Databricks:

  1. Seguire i passaggi per copiare la libreria usando la CLI di Databricks

  2. Usare CLI Databricks (procedura di installazione)

    Ad esempio, per copiare un file JAR in dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar