Condividi tramite


Creare il primo flusso di lavoro con un lavoro di Azure Databricks

Questo articolo illustra un lavoro di Azure Databricks che orchestra le task per leggere ed elaborare un set di dati di esempio. Questa guida introduttiva spiega come:

  1. Creare un nuovo notebook e aggiungere codice per riprendere un set di dati di esempio contenente i nomi di bambini più diffusi in base all'anno.
  2. Salvare il set di dati di esempio in Unity Catalog.
  3. Creare un nuovo notebook e aggiungere codice per leggere il set di dati dal catalogo unity, filtrarlo in base all'anno e visualizzare i risultati.
  4. Creare un nuovo lavoro e configurare due task usando i notebook.
  5. Eseguire il processo e visualizzare i risultati.

Requisiti

Se l'area di lavoro è abilitata per Unity Catalog e Serverless Jobs è abilitato, per impostazione predefinita, il job viene eseguito su infrastruttura serverless. Non è necessaria l'autorizzazione di creazione del cluster per eseguire il lavoro con Elaborazione serverless.

In caso contrario, è necessario disporre di autorizzazione di creazione del cluster per creare il calcolo processi o delle autorizzazioni per tutte le risorse di calcolo multiuso.

È necessario disporre di un volume in Unity Catalog. Questo articolo usa un volume denominato my-volume in uno schema denominato default all'interno di un catalogo denominato main. Inoltre, è necessario disporre delle autorizzazioni seguenti in Unity Catalog:

  • READ VOLUME e WRITE VOLUME, o ALL PRIVILEGES per il volume my-volume.
  • USE SCHEMA o ALL PRIVILEGES per lo schema default.
  • USE CATALOG o ALL PRIVILEGES per il catalogo main.

Per impostare queste autorizzazioni, vedere l'amministratore di Databricks o i privilegi di Unity Catalog e gli oggetti a protezione diretta.

Creare i notebook

Riprendere e salvare i dati

Per creare un notebook per recuperare il set di dati di esempio e salvarlo in Unity Catalog:

  1. Passare alla pagina di destinazione di Azure Databricks e fare clic su Nuova iconaNuovo nella barra laterale e selezionare Notebook. Databricks crea e apre un nuovo notebook vuoto nella cartella predefinita. Il linguaggio predefinito è quello usato di recente e il notebook viene collegato automaticamente alla risorsa di calcolo usata di recente.

  2. Se necessario, modificare il linguaggio predefinito in Python.

  3. Copiare il seguente codice Python e incollarlo nella prima cella del notebook.

    import requests
    
    response = requests.get('https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv')
    csvfile = response.content.decode('utf-8')
    dbutils.fs.put("/Volumes/main/default/my-volume/babynames.csv", csvfile, True)
    

Leggere e visualizzare i dati filtrati

Per creare un notebook per leggere e presentare i dati per eseguire il filtro:

  1. Passare alla pagina di destinazione di Azure Databricks e fare clic su Nuova iconaNuovo nella barra laterale e selezionare Notebook. Databricks crea e apre un nuovo notebook vuoto nella cartella predefinita. Il linguaggio predefinito è quello usato di recente e il notebook viene collegato automaticamente alla risorsa di calcolo usata di recente.

  2. Se necessario, modificare il linguaggio predefinito in Python.

  3. Copiare il seguente codice Python e incollarlo nella prima cella del notebook.

    babynames = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/Volumes/main/default/my-volume/babynames.csv")
    babynames.createOrReplaceTempView("babynames_table")
    years = spark.sql("select distinct(Year) from babynames_table").toPandas()['Year'].tolist()
    years.sort()
    dbutils.widgets.dropdown("year", "2014", [str(x) for x in years])
    display(babynames.filter(babynames.Year == dbutils.widgets.get("year")))
    

Creare un processo

  1. Cliccare Icona Flussi di lavoroFlussi di lavoro nella barra laterale.

  2. Cliccare Pulsante Crea processo.

    Viene visualizzata la scheda Tasks con la finestra di dialogo Crea task.

    Finestra di dialogo Crea prima attività

  3. Sostituire Aggiungi un nome per il processo… con il nome del processo.

  4. Nel campo Nome task immettere un nome per il task, ad esempio retrieve-baby-names.

  5. Nel menu a tendina Tipo selezionare Notebook.

  6. Utilizzare il browser dei file per trovare il notebook creato, cliccare sul nome del notebook e poi su Conferma.

  7. Cliccare Crea task.

  8. Cliccare Pulsante Aggiungi attività sotto la task appena creata per aggiungere un'altra task.

  9. Nel campo Nome task immettere un nome per il task, ad esempio filter-baby-names.

  10. Nel menu a tendina Tipo selezionare Notebook.

  11. Utilizzare il browser dei file per trovare il secondo notebook creato, cliccare sul nome del notebook e poi su Conferma.

  12. Fare clic su Aggiungi sotto Parametri. Nel campo Chiave immettere year. Nel campo Valore immettere 2014.

  13. Cliccare Crea task.

Eseguire il processo

Per eseguire immediatamente il lavoro, cliccare Pulsante Esegui ora nell'angolo in alto a destra. È anche possibile eseguire il processo facendo clic sulla scheda Esecuzioni e facendo clic su Esegui ora nella tabella Esecuzioni attive.

Visualizzare i dettagli dell'esecuzione

  1. Fare clic sulla scheda Esecuzioni e fare clic sul collegamento per l'esecuzione nella tabella Esecuzioni attive o nella tabella Esecuzioni completate (ultimi 60 giorni) tabella.

  2. Fare clic su una delle task per visualizzare l'output e i dettagli. Ad esempio, cliccare sulla task filter-baby-names per visualizzare l'output ed eseguire i dettagli per la task di filtro:

    Visualizzare i risultati dei nomi dei filtri

Esegui utilizzando parametri diversi

Per eseguire di nuovo il lavoro e filtrare i nomi dei bambini per un anno diverso:

  1. Fare clic su Freccia Giù Blu accanto a Esegui ora e selezionare Esegui ora con parametri diversi oppure fare clic su Esegui ora con parametri diversi nella tabella Esecuzioni Attive.
  2. Nel campo Valore immettere 2015.
  3. Fare clic su Esegui.