Bagikan melalui


Mentransformasi data dengan menjalankan notebook Databricks

Azure Data Factory Azure Synapse Analytics

Petunjuk

Data Factory di Microsoft Fabric adalah generasi Azure Data Factory berikutnya, dengan arsitektur yang lebih sederhana, AI bawaan, dan fitur baru. Jika Anda baru menggunakan integrasi data, mulailah dengan Fabric Data Factory. Beban kerja ADF yang ada dapat ditingkatkan ke Fabric untuk mengakses kemampuan baru di seluruh ilmu data, analitik real time, dan pelaporan.

Aktivitas Buku Catatan Azure Databricks di pipeline menjalankan buku catatan Databricks di ruang kerja Azure Databricks Anda. Artikel ini membangun artikel aktivitas transformasi data, yang menyajikan gambaran umum tentang transformasi data dan aktivitas transformasi yang didukung. Azure Databricks adalah platform terkelola untuk menjalankan Apache Spark.

Anda dapat membuat buku catatan Databricks dengan templat ARM menggunakan JSON, atau langsung melalui antarmuka pengguna Azure Data Factory Studio. Untuk panduan langkah demi langkah tentang cara membuat aktivitas buku catatan Databricks menggunakan antarmuka pengguna, referensikan tutorial Jalankan buku catatan Databricks dengan Aktivitas Notebook Databricks di Azure Data Factory.

Tambahkan aktivitas Notebook untuk Azure Databricks ke pipeline dengan UI

Untuk menggunakan aktivitas Notebook untuk Azure Databricks dalam alur, selesaikan langkah-langkah berikut:

  1. Cari Notebook di panel Aktivitas alur proses, dan seret aktivitas Notebook ke kanvas alur.

  2. Pilih aktifitas Notebook baru di kanvas jika belum dipilih.

  3. Pilih tab Azure Databricks untuk memilih atau membuat layanan tertaut Azure Databricks baru yang akan menjalankan aktivitas Notebook.

    Memperlihatkan UI untuk aktivitas Notebook.

  4. Pilih tab Settings dan tentukan jalur notebook yang akan dijalankan pada Azure Databricks, parameter dasar opsional untuk diteruskan ke notebook, dan pustaka lain yang akan diinstal pada kluster untuk menjalankan pekerjaan.

    Memperlihatkan UI untuk tab Pengaturan untuk aktivitas Buku Catatan.

Definisi aktivitas Databricks Notebook

Berikut adalah contoh definisi JSON dari Aktivitas Notebook 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"
                }
            ]
        }
    }
}

Properti aktivitas Notebook Databricks

Tabel berikut menjelaskan properti JSON yang digunakan dalam definisi JSON:

Properti Deskripsi Wajib
nama Nama aktivitas dalam pipeline. Ya
deskripsi Teks yang menjelaskan apa yang dilakukan aktivitas. Tidak
jenis Untuk Aktivitas Notebook Databricks, jenis aktivitasnya adalah DatabricksNotebook. Ya
NamaLayananTertaut Nama Layanan Terhubung Databricks tempat notebook Databricks dijalankan. Untuk mempelajari layanan tertaut ini, lihat artikel Layanan tertaut komputasi. Ya
notebookPath Jalur mutlak notebook yang akan dijalankan di Ruang Kerja Databricks. Jalur ini harus dimulai dengan garis miring. Ya
baseParameters Larik pasangan Kunci-Nilai. Parameter dasar dapat digunakan untuk setiap aktivitas yang dijalankan. Jika notebook mengambil parameter yang tidak ditentukan, nilai default dari buku catatan akan digunakan. Temukan selengkapnya tentang parameter di Notebook Databricks. Tidak
pustaka Daftar perpustakaan yang akan diinstal di kluster untuk menjalankan pekerjaan. Ini bisa berupa larik <string, objek>. Tidak

Pustaka yang didukung untuk aktivitas Databricks

Dalam definisi aktivitas Databricks di atas, Anda menentukan jenis perpustakaan ini: 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"
            }
        }
    ]
}

Untuk informasi selengkapnya, lihat Dokumentasi Databricks untuk mengetahui jenis pustaka.

Meneruskan parameter antara notebook dan pipeline

Anda dapat meneruskan parameter ke notebook menggunakan properti baseParameters dalam aktivitas databricks.

Dalam kasus tertentu, Anda mungkin perlu mengembalikan nilai tertentu dari notebook ke layanan, yang dapat digunakan untuk aliran kontrol (pemeriksaan bersyarat) dalam layanan atau digunakan oleh aktivitas downstream (batas ukuran adalah 2 MB).

  1. Di notebook Anda, Anda dapat memanggil dbutils.notebook.exit("returnValue") dan "returnValue" yang sesuai akan dikembalikan ke layanan.

  2. Anda dapat menggunakan output dalam layanan dengan menggunakan ekspresi seperti @{activity('databricks notebook activity name').output.runOutput}.

    Penting

    Jika Anda melewati objek JSON, Anda dapat mengambil nilai dengan menambahkan nama properti. Contoh: @{activity('databricks notebook activity name').output.runOutput.PropertyName}

Cara mengunggah pustaka di Databricks

Anda dapat menggunakan antarmuka pengguna Ruang Kerja:

  1. Menggunakan antarmuka pengguna ruang kerja Databricks

  2. Untuk mendapatkan jalur DBFS dari pustaka yang ditambahkan menggunakan UI, Anda dapat menggunakan Databricks CLI.

    Biasanya, pustaka Jar disimpan di bawah dbfs:/FileStore/jars saat menggunakan antarmuka pengguna. Anda dapat mencantumkan semuanya melalui CLI: databricks fs ls dbfs:/FileStore/job-jars

Atau, Anda dapat menggunakan Databricks CLI:

  1. Ikuti Menyalin pustaka menggunakan Databricks CLI

  2. Menggunakan Databricks CLI (langkah penginstalan)

    Sebagai contoh, untuk menyalin JAR ke dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar