Udostępnij za pośrednictwem


Przekształć dane, uruchamiając notebooka Databricks.

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Wskazówka

Data Factory w usłudze Microsoft Fabric jest następną generacją Azure Data Factory z prostszą architekturą, wbudowaną sztuczną inteligencją i nowymi funkcjami. Jeśli dopiero zaczynasz integrować dane, zacznij od Fabric Data Factory. Istniejące obciążenia ADF można zaktualizować do Fabric, aby uzyskać dostęp do nowych możliwości w zakresie nauki o danych, analiz w czasie rzeczywistym oraz raportowania.

Działanie notatnika Azure Databricks w pipeline uruchamia notatnik w usłudze Databricks w obszarze roboczym Azure Databricks. Ten artykuł opiera się na artykule dotyczącym działań przekształcania danych, który zawiera ogólne omówienie transformacji danych i obsługiwanych działań przekształcania. Azure Databricks to zarządzana platforma do uruchamiania platformy Apache Spark.

Notebook Databricks można utworzyć przy użyciu szablonu ARM w JSON lub bezpośrednio przez interfejs użytkownika Azure Data Factory Studio. Aby zapoznać się z przewodnikiem krok po kroku dotyczącym tworzenia działania notesu usługi Databricks przy użyciu interfejsu użytkownika, zapoznaj się z samouczkiem Uruchom notesu usługi Databricks za pomocą działania notesu usługi Databricks w Azure Data Factory.

Dodanie aktywności notatnika dla Azure Databricks do ciągu przetwarzania przy użyciu interfejsu użytkownika

Aby użyć działania notesu dla Azure Databricks w potoku, wykonaj następujące kroki:

  1. Wyszukaj pozycję Notes w okienku Działania potoku i przeciągnij działanie Notes na kanwę potoku.

  2. Wybierz nowe działanie Notebook na płótnie, jeśli nie zostało jeszcze wybrane.

  3. Wybierz kartę Azure Databricks, aby wybrać lub utworzyć nową połączoną usługę Azure Databricks, która wykona aktywność Notebooka.

    Pokazuje interfejs użytkownika działania notesu.

  4. Wybierz kartę Settings i określ ścieżkę notesu do wykonania na Azure Databricks, opcjonalne parametry podstawowe, które mają zostać przekazane do notesu, oraz wszystkie inne biblioteki do zainstalowania w klastrze w celu wykonania zadania.

    Pokazuje interfejs użytkownika dla karty Ustawienia działania notesu.

Definicja aktywności notebooka Databricks

Oto przykładowa definicja JSON działania notesu usługi Databricks:

{
    "activity": {
        "name": "MyActivity",
        "description": "MyActivity description",
        "type": "DatabricksNotebook",
        "linkedServiceName": {
            "referenceName": "MyDatabricksLinkedservice",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "notebookPath": "/Users/user@example.com/ScalaExampleNotebook",
            "baseParameters": {
                "inputpath": "input/folder1/",
                "outputpath": "output/"
            },
            "libraries": [
                {
                "jar": "dbfs:/docs/library.jar"
                }
            ]
        }
    }
}

Właściwości działania notebooka Databricks

W poniższej tabeli opisano właściwości JSON używane w definicji JSON:

Właściwości Opis Wymagane
nazwa Nazwa działania w potoku. Tak
opis Tekst opisujący działanie. Nie.
typ W przypadku aktywności notatnika Databricks, typ aktywności to DatabricksNotebook. Tak
linkedServiceName Nazwa połączonej usługi Databricks, na której działa notatnik Databricks. Aby dowiedzieć się więcej o tej połączonej usłudze, zobacz artykuł Dotyczący połączonych usług obliczeniowych. Tak
notebookPath Ścieżka bezwzględna notatnika do uruchomienia w Databricks Workspace. Ścieżka musi rozpoczynać się od ukośnika (znak /). Tak
podstawoweParametry Tablica par Klucz-Wartość. Parametry podstawowe mogą być używane dla każdego przebiegu działania. Jeśli notes przyjmuje parametr, który nie jest określony, zostanie użyta wartość domyślna z notesu. Więcej informacji na temat parametrów można znaleźć w Databricks Notebooks. Nie.
biblioteki Lista bibliotek, które mają być zainstalowane w klastrze, które będą wykonywać zadanie. Może to być tablica stringów lub obiektów<>. Nie.

Obsługiwane biblioteki dla działań usługi Databricks

W powyższej definicji działania usługi Databricks należy określić następujące typy bibliotek: jar, egg, whl, maven, pypi, cran.

{
    "libraries": [
        {
            "jar": "dbfs:/mnt/libraries/library.jar"
        },
        {
            "egg": "dbfs:/mnt/libraries/library.egg"
        },
        {
            "whl": "dbfs:/mnt/libraries/mlflow-0.0.1.dev0-py2-none-any.whl"
        },
        {
            "whl": "dbfs:/mnt/libraries/wheel-libraries.wheelhouse.zip"
        },
        {
            "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"
            }
        }
    ]
}

Aby uzyskać więcej informacji, zobacz dokumentację usługi Databricks dotyczącą typów bibliotek.

Przekazywanie parametrów między notesami i potokami

Parametry można przekazywać do notesów przy użyciu właściwości baseParameters w aktywności Databricks.

W niektórych przypadkach może być konieczne przekazanie określonych wartości z notatnika z powrotem do usługi, które można użyć do kontroli przepływu (kontrole warunkowe) w usłudze lub do wykorzystania przez działania podrzędne (limit rozmiaru to 2 MB).

  1. W notatniku możesz wywołać metodę dbutils.notebook.exit("returnValue"), a zwracana wartość "returnValue" zostanie zwrócona do usługi.

  2. Dane wyjściowe w usłudze można wykorzystać przy użyciu wyrażenia takiego jak @{activity('databricks notebook activity name').output.runOutput}.

    Ważne

    Jeśli przekazujesz obiekt JSON, możesz pobrać wartości, dołączając nazwy właściwości. Przykład: @{activity('databricks notebook activity name').output.runOutput.PropertyName}

Jak załadować bibliotekę w usłudze Databricks

Możesz użyć interfejsu użytkownika obszaru roboczego:

  1. Korzystanie z interfejsu użytkownika obszaru roboczego usługi Databricks

  2. Aby uzyskać ścieżkę dbfs biblioteki dodanej przy użyciu UI, możesz użyć Databricks CLI.

    Zazwyczaj biblioteki Jar są przechowywane w obszarze dbfs:/FileStore/jars podczas korzystania z interfejsu użytkownika. Możesz wyświetlić listę przez CLI: databricks fs ls dbfs:/FileStore/job-jars

Możesz też użyć interfejsu wiersza polecenia usługi Databricks:

  1. Postępuj zgodnie z instrukcjami kopiowania biblioteki przy użyciu interfejsu CLI usługi Databricks

  2. Użyj interfejsu wiersza polecenia Databricks (kroki instalacji)

    Aby na przykład skopiować plik JAR do dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar