Erstellen Ihres ersten Workflows mit einem Azure Databricks-Auftrag

In diesem Artikel wird ein Azure Databricks-Auftrag veranschaulicht, der Aufgaben zum Lesen und Verarbeiten eines Beispieldatasets orchestriert. In dieser Schnellstartanleitung führen Sie die folgenden Schritte aus:

  1. Erstellen eines neuen Notebooks und Hinzufügen von Code, um ein Beispieldataset mit beliebten Namen nach Jahr abzurufen
  2. Speichern Sie das Beispieldataset in Unity Catalog.
  3. Erstellen Sie ein neues Notebook, und fügen Sie Code hinzu, um das Dataset aus Unity Catalog zu lesen, nach Jahr zu filtern und die Ergebnisse anzuzeigen.
  4. Erstellen eines neuen Auftrags und Konfigurieren von zwei Aufgaben mithilfe der Notebooks
  5. Ausführen des Auftrags und Anzeigen der Ergebnisse

Anforderungen

Wenn Ihr Arbeitsbereich für Unity Catalog aktiviert ist und serverlose Workflows aktiviert sind, wird der Auftrag standardmäßig über serverloses Computing ausgeführt. Sie benötigen keine Berechtigung für die Clustererstellung, um Ihren Auftrag mit serverlosem Computing auszuführen.

Andernfalls benötigen Sie die Berechtigung für das Erstellen von Clusters oder Berechtigungen für universelle Computeressourcen.

Sie benötigen ein Volume in Unity Catalog. In diesem Artikel wird ein Volume mit dem Namen my-volume in einem Schema mit dem Namen default in einem Katalog namens main verwendet. Außerdem müssen Sie über die folgenden Berechtigungen in Unity Catalog verfügen:

  • READ VOLUME und WRITE VOLUME oder ALL PRIVILEGES, für das Volume my-volume
  • USE SCHEMA oder ALL PRIVILEGES für das Schema default
  • USE CATALOG oder ALL PRIVILEGES für den Katalog main

Wenden Sie sich zum Festlegen dieser Berechtigungen an Ihre Databricks-Administratoren/-Administratorinnen, oder lesen Sie den Artikel Unity Catalog-Berechtigungen und sicherungsfähige Objekte, um mehr zu erfahren.

Erstellen der Notebooks

Abrufen und Speichern von Daten

So erstellen Sie ein Notebook zum Abrufen des Beispieldatasets und speichern es in Unity Catalog

  1. Wechseln Sie zu Ihrer Startseite von Azure Databricks, klicken Sie in der Seitenleiste auf das Symbol NeuNeu und wählen Sie aus dem Menü die Option Notebook aus. Databricks erstellt und öffnet ein neues, leeres Notizbuch in Ihrem Standardordner. Die Standardsprache ist die Sprache, die Sie zuletzt verwendet haben, und das Notebook wird automatisch an die Compute-Ressource angefügt, die Sie zuletzt verwendet haben.

  2. Ändern Sie bei Bedarf die Standardsprache in Python.

  3. Kopieren Sie den folgenden Python-Code, und fügen Sie ihn in die erste Zelle des Notebooks ein.

    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)
    

Lesen und Anzeigen gefilterter Daten

So erstellen Sie ein Notebook zum Lesen und Darstellen der Daten zum Filtern:

  1. Wechseln Sie zu Ihrer Startseite von Azure Databricks, klicken Sie in der Seitenleiste auf das Symbol NeuNeu und wählen Sie aus dem Menü die Option Notebook aus. Databricks erstellt und öffnet ein neues, leeres Notizbuch in Ihrem Standardordner. Die Standardsprache ist die Sprache, die Sie zuletzt verwendet haben, und das Notebook wird automatisch an die Compute-Ressource angefügt, die Sie zuletzt verwendet haben.

  2. Ändern Sie bei Bedarf die Standardsprache in Python.

  3. Kopieren Sie den folgenden Python-Code, und fügen Sie ihn in die erste Zelle des Notebooks ein.

    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")))
    

Erstellen eines Auftrags

  1. Klicken Sie auf der Randleiste auf Symbol „Aufträge“Workflows.

  2. Klicken Sie auf die Schaltfläche Auftrag erstellen.

    Die Registerkarte Aufgaben wird mit dem Dialogfeld „Aufgabe erstellen“ angezeigt.

    Dialogfeld „Erste Aufgabe erstellen“

  3. Ersetzen Sie Add a name for your job… (Namen für Ihren Auftrag hinzufügen...) mit dem Namen für den Auftrag.

  4. Geben Sie im Feld Aufgabenname einen Namen für die Aufgabe ein. z. B. retrieve-baby-names.

  5. Wählen Sie im Dropdownmenü TypNotebook aus.

  6. Verwenden Sie den Dateibrowser, um das erste Notebook zu suchen, das Sie erstellt haben. Klicken Sie auf den Namen des Notebooks und dann auf Bestätigen.

  7. Klicken Sie auf Aufgabe erstellen.

  8. Klicken Sie unter der Aufgabe, die Sie gerade erstellt haben, auf Schaltfläche zum Hinzufügen einer Aufgabe, um eine weitere Aufgabe hinzuzufügen.

  9. Geben Sie im Feld Aufgabenname einen Namen für die Aufgabe ein. z. B. filter-baby-names.

  10. Wählen Sie im Dropdownmenü TypNotebook aus.

  11. Verwenden Sie den Dateibrowser, um das zweite Notebook zu suchen, das Sie erstellt haben. Klicken Sie auf den Namen des Notebooks und dann auf Bestätigen.

  12. Klicken Sie unter Parameter auf Hinzufügen. Geben Sie im Feld Schlüsselyear ein. Geben Sie im Feld Wert2014 ein.

  13. Klicken Sie auf Aufgabe erstellen.

Ausführung des Auftrags.

Um den Auftrag sofort auszuführen, klicken Sie oben rechts auf Schaltfläche „Jetzt ausführen“. Sie können den Auftrag auch ausführen, indem Sie auf die Registerkarte Ausführungen klicken und in der Tabelle Aktive Ausführungen auf Jetzt ausführen klicken.

Anzeigen von Ausführungsdetails

  1. Klicken Sie auf die Registerkarte Ausführungen und dann auf die Aktiven Ausführungen-Tabelle in der Abgeschlossene Ausführungen (letzte 60 Tage)-Tabelle.

  2. Klicken Sie auf eine Aufgabe, um die Ausgabe und die Details anzuzeigen. Klicken Sie z. B. auf die Aufgabe filter-baby-names, um die Ausgabe und Ausführungsdetails für die Filteraufgabe anzuzeigen:

    Anzeigen der Ergebnisse von Filternamen

Ausführung mit anderen Parametern

So führen Sie den Auftrag erneut aus und filtern Babynamen für ein anderes Jahr:

  1. Klicken Sie auf Blaues Feld mit Pfeil nach unten neben Jetzt ausführen, und wählen Sie Jetzt mit anderen Parametern ausführen, oder klicken Sie in der Tabelle Aktive Ausführungen auf Jetzt mit anderen Parametern ausführen.
  2. Geben Sie im Feld Wert2015 ein.
  3. Klicken Sie auf Ausführen.