Mentransformasi data dengan menjalankan notebook Databricks

BERLAKU UNTUK:Azure Data Factory Azure Synapse Analytics

Tip

Cobalah Data Factory di Microsoft Fabric, solusi analitik all-in-one untuk perusahaan. Microsoft Fabric mencakup segala sesuatu mulai dari pergerakan data hingga ilmu data, analitik real-time, kecerdasan bisnis, dan pelaporan. Pelajari cara memulai uji coba baru secara gratis!

Aktivitas Notebook Azure Databricks dalam alur menjalankan notebook Databricks di ruang kerja Azure Databricks Anda. Artikel ini disusun berdasarkan artikel aktivitas transformasi data, yang menyajikan ringkasan umum tentang transformasi data dan aktivitas transformasi yang didukung. Azure Databricks adalah platform terkelola untuk menjalankan Apache Spark.

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

Tambahkan aktivitas Notebook untuk Azure Databricks ke alur dengan UI

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

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

  2. Pilih aktivitas 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 Pengaturan dan tentukan jalur notebook yang akan dijalankan di Azure Databricks, parameter dasar opsional yang akan diteruskan ke notebook, dan pustaka tambahan apa pun yang akan dipasang di 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 ini menjelaskan properti JSON yang digunakan dalam definisi JSON:

Properti Deskripsi Diperlukan
nama Nama aktivitas di dalam alur. Ya
deskripsi Teks yang menjelaskan apa yang dilakukan aktivitas. Tidak
jenis Untuk Aktivitas Notebook Databricks, jenis aktivitasnya adalah DatabricksNotebook. Ya
linkedServiceName Nama Layanan Tertaut 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 notebook akan digunakan. Temukan selengkapnya tentang parameter di Notebook Databricks. Tidak
pustaka Daftar pustaka yang akan diinstal di kluster yang akan menjalankan pekerjaan. Ini bisa berupa baris <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 alur

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 dapat menggunakan dbutils.notebook.exit("returnValue") dan "returnValue" terkait akan dikembalikan ke layanan.

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

    Penting

    Jika meneruskan 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 antarmuka pengguna, 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