Bagikan melalui


Databricks Connect untuk Scala

Catatan

Artikel ini membahas Databricks Connect untuk Databricks Runtime 13.3 LTS ke atas.

Artikel ini menunjukkan cara memulai Databricks Connect dengan cepat menggunakan Scala dengan IntelliJ IDEA dan plugin Scala.

Databricks Connect memungkinkan Anda menyambungkan ID Populer seperti IntelliJ IDEA, server notebook, dan aplikasi kustom lainnya ke kluster Azure Databricks. Lihat Apa itu Databricks Connect?.

Tutorial

Untuk melewati tutorial ini dan menggunakan IDE yang berbeda, lihat Langkah berikutnya.

Persyaratan

Untuk menyelesaikan tutorial ini, Anda harus memenuhi persyaratan berikut:

  • Ruang kerja dan kluster Azure Databricks target Anda harus memenuhi persyaratan konfigurasi Kluster untuk Databricks Connect.

  • Anda harus memiliki ID kluster Anda yang tersedia. Untuk mendapatkan ID kluster Anda, di ruang kerja Anda, klik Komputasi di bar samping, lalu klik nama kluster Anda. Di bilah alamat browser web Anda, salin string karakter antara clusters dan configuration di URL.

  • Anda memiliki Java Development Kit (JDK) yang diinstal pada komputer pengembangan Anda. Databricks merekomendasikan agar versi penginstalan JDK yang Anda gunakan cocok dengan versi JDK di kluster Azure Databricks Anda. Tabel berikut ini memperlihatkan versi JDK untuk setiap Databricks Runtime yang didukung.

    Versi Runtime bahasa umum Databricks Versi JDK
    13.3 LTS - 15.0,
    13.3 ML LTS - 15.0 ML
    JDK 8

    Catatan

    Jika Anda tidak memiliki JDK yang terinstal, atau jika Anda memiliki beberapa penginstalan JDK di komputer pengembangan, Anda dapat menginstal atau memilih JDK tertentu nanti di Langkah 1. Memilih penginstalan JDK yang berada di bawah atau di atas versi JDK pada kluster Anda mungkin menghasilkan hasil yang tidak terduga, atau kode Anda mungkin tidak berjalan sama sekali.

  • Anda telah menginstal IntelliJ IDEA . Tutorial ini diuji dengan IntelliJ IDEA Community Edition 2023.3.6. Jika Anda menggunakan versi atau edisi IntelliJ IDEA yang berbeda, instruksi berikut mungkin bervariasi.

  • Anda memiliki plugin Scala untuk IntelliJ IDEA yang terinstal.

Langkah 1: Mengonfigurasi autentikasi Azure Databricks

Tutorial ini menggunakan autentikasi pengguna-ke-mesin (U2M) Azure Databricks OAuth dan profil konfigurasi Azure Databricks untuk mengautentikasi dengan ruang kerja Azure Databricks Anda. Untuk menggunakan jenis autentikasi yang berbeda, lihat Mengonfigurasi properti koneksi.

Mengonfigurasi autentikasi OAuth U2M memerlukan Databricks CLI, sebagai berikut:

  1. Jika belum diinstal, instal Databricks CLI sebagai berikut:

    Linux, macOS

    Gunakan Homebrew untuk menginstal Databricks CLI dengan menjalankan dua perintah berikut:

    brew tap databricks/tap
    brew install databricks
    

    Windows

    Anda dapat menggunakan winget, Chocolatey atau Subsistem Windows untuk Linux (WSL) untuk menginstal Databricks CLI. Jika Anda tidak dapat menggunakan winget, Chocolatey, atau WSL, Anda harus melewati prosedur ini dan menggunakan Prompt Perintah atau PowerShell untuk menginstal Databricks CLI dari sumber sebagai gantinya.

    Catatan

    Menginstal Databricks CLI dengan Chocolatey bersifat Eksperimental.

    Untuk menggunakan winget untuk menginstal Databricks CLI, jalankan dua perintah berikut, lalu mulai ulang Prompt Perintah Anda:

    winget search databricks
    winget install Databricks.DatabricksCLI
    

    Untuk menggunakan Chocolatey untuk menginstal Databricks CLI, jalankan perintah berikut:

    choco install databricks-cli
    

    Untuk menggunakan WSL untuk menginstal Databricks CLI:

    1. Instal curl dan zip melalui WSL. Untuk informasi selengkapnya, lihat dokumentasi sistem operasi Anda.

    2. Gunakan WSL untuk menginstal Databricks CLI dengan menjalankan perintah berikut:

      curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
      
  2. Konfirmasikan bahwa Databricks CLI diinstal dengan menjalankan perintah berikut, yang menampilkan versi CLI Databricks yang diinstal saat ini. Versi ini harus 0.205.0 atau lebih tinggi:

    databricks -v
    

    Catatan

    Jika Anda menjalankan databricks tetapi mendapatkan kesalahan seperti command not found: databricks, atau jika Anda menjalankan databricks -v dan nomor versi 0,18 atau di bawah ini tercantum, ini berarti bahwa komputer Anda tidak dapat menemukan versi yang benar dari Databricks CLI yang dapat dieksekusi. Untuk memperbaikinya, lihat Memverifikasi penginstalan CLI Anda.

Mulai autentikasi OAuth U2M, sebagai berikut:

  1. Gunakan Databricks CLI untuk memulai manajemen token OAuth secara lokal dengan menjalankan perintah berikut untuk setiap ruang kerja target.

    Dalam perintah berikut, ganti <workspace-url> dengan URL per ruang kerja Azure Databricks Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --configure-cluster --host <workspace-url>
    
  2. Databricks CLI meminta Anda untuk menyimpan informasi yang Anda masukkan sebagai profil konfigurasi Azure Databricks. Tekan Enter untuk menerima nama profil yang disarankan, atau masukkan nama profil baru atau yang sudah ada. Profil yang ada dengan nama yang sama ditimpa dengan informasi yang Anda masukkan. Anda dapat menggunakan profil untuk mengalihkan konteks autentikasi dengan cepat di beberapa ruang kerja.

    Untuk mendapatkan daftar profil yang ada, di terminal atau prompt perintah terpisah, gunakan Databricks CLI untuk menjalankan perintah databricks auth profiles. Untuk melihat pengaturan profil tertentu yang sudah ada, jalankan perintah databricks auth env --profile <profile-name>.

  3. Di browser web Anda, selesaikan instruksi di layar untuk masuk ke ruang kerja Azure Databricks Anda.

  4. Dalam daftar kluster yang tersedia yang muncul di terminal atau prompt perintah Anda, gunakan tombol panah atas dan panah bawah Anda untuk memilih kluster Azure Databricks target di ruang kerja Anda, lalu tekan Enter. Anda juga dapat mengetik bagian mana pun dari nama tampilan kluster untuk memfilter daftar kluster yang tersedia.

  5. Untuk melihat nilai token OAuth profil saat ini dan tanda waktu kedaluwarsa token yang akan datang, jalankan salah satu perintah berikut:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Jika Anda memiliki beberapa profil dengan nilai yang sama --host , Anda mungkin perlu menentukan --host opsi dan -p bersama-sama untuk membantu Databricks CLI menemukan informasi token OAuth yang cocok dengan benar.

Langkah 2: Membuat proyek

  1. Mulai Ide IntelliJ.

  2. Pada menu utama, klik File > Proyek Baru>.

  3. Beri proyek Anda beberapa Nama yang bermakna.

  4. Untuk Lokasi, klik ikon folder, dan selesaikan petunjuk arah di layar untuk menentukan jalur ke proyek Scala baru Anda.

  5. Untuk Bahasa, klik Scala.

  6. Untuk Sistem build, klik sbt.

  7. Di daftar drop-down JDK, pilih penginstalan JDK yang ada di komputer pengembangan Anda yang cocok dengan versi JDK pada kluster Anda, atau pilih Unduh JDK dan ikuti instruksi di layar untuk mengunduh JDK yang cocok dengan versi JDK pada kluster Anda.

    Catatan

    Memilih penginstalan JDK yang berada di atas atau di bawah versi JDK pada kluster Anda mungkin menghasilkan hasil yang tidak terduga, atau kode Anda mungkin tidak berjalan sama sekali.

  8. Di daftar drop-down sbt, pilih versi terbaru.

  9. Di daftar drop-down Scala, pilih versi Scala yang cocok dengan versi Scala pada kluster Anda. Tabel berikut ini memperlihatkan versi Scala untuk setiap Databricks Runtime yang didukung:

    Versi Runtime bahasa umum Databricks Versi Scala
    13.3 LTS - 15.0,
    13.3 ML LTS - 15.0 ML
    2.12.15

    Catatan

    Memilih versi Scala yang berada di bawah atau di atas versi Scala pada kluster Anda mungkin menghasilkan hasil yang tidak terduga, atau kode Anda mungkin tidak berjalan sama sekali.

  10. Pastikan kotak Unduh sumber di samping Scala dicentang.

  11. Untuk Awalan paket, masukkan beberapa nilai awalan paket untuk sumber proyek Anda, misalnya org.example.application.

  12. Pastikan kotak Tambahkan kode sampel dicentang.

  13. Klik Buat.

Membuat proyek IntelliJ IDEA

Langkah 3: Tambahkan paket Databricks Connect

  1. Dengan proyek Scala baru Anda terbuka, di jendela alat Proyek Anda (Lihat > Alat Proyek Windows>), buka file bernama build.sbt, di target nama> proyek.

  2. Tambahkan kode berikut ke akhir build.sbt file, yang menyatakan dependensi proyek Anda pada versi tertentu dari pustaka Databricks Connect untuk Scala:

    libraryDependencies += "com.databricks" % "databricks-connect" % "14.3.1"
    

    Ganti 14.3.1 dengan versi pustaka Databricks Connect yang cocok dengan versi Databricks Runtime pada kluster Anda. Anda dapat menemukan nomor versi pustaka Databricks Connect di repositori pusat Maven.

  3. Klik ikon Muat pemberitahuan perubahan sbt untuk memperbarui proyek Scala Anda dengan lokasi dan dependensi pustaka baru.

  4. Tunggu hingga sbt indikator kemajuan di bagian bawah IDE menghilang. Proses sbt pemuatan mungkin perlu waktu beberapa menit untuk diselesaikan.

Menginstal paket Databricks Connect

Langkah 4: Tambahkan kode

  1. Di jendela alat Proyek Anda, buka file bernama Main.scala, di scala utama > src > nama> proyek.

  2. Ganti kode yang ada dalam file dengan kode berikut lalu simpan file, tergantung pada nama profil konfigurasi Anda.

    Jika profil konfigurasi Anda dari Langkah 1 diberi nama DEFAULT, ganti kode yang ada dalam file dengan kode berikut, lalu simpan file:

    package org.example.application
    
    import com.databricks.connect.DatabricksSession
    import org.apache.spark.sql.SparkSession
    
    object Main {
      def main(args: Array[String]): Unit = {
        val spark = DatabricksSession.builder().remote().getOrCreate()
        val df = spark.read.table("samples.nyctaxi.trips")
        df.limit(5).show()
      }
    }
    

    Jika profil konfigurasi Anda dari Langkah 1 tidak bernama DEFAULT, ganti kode yang ada dalam file dengan kode berikut sebagai gantinya. Ganti tempat penampung <profile-name> dengan nama profil konfigurasi Anda dari Langkah 1, lalu simpan file:

    package org.example.application
    
    import com.databricks.connect.DatabricksSession
    import com.databricks.sdk.core.DatabricksConfig
    import org.apache.spark.sql.SparkSession
    
    object Main {
      def main(args: Array[String]): Unit = {
        val config = new DatabricksConfig().setProfile("<profile-name>")
        val spark = DatabricksSession.builder().sdkConfig(config).getOrCreate()
        val df = spark.read.table("samples.nyctaxi.trips")
        df.limit(5).show()
      }
    }
    

Langkah 5: Jalankan kode

  1. Mulai kluster target di ruang kerja Azure Databricks jarak jauh Anda.
  2. Setelah kluster dimulai, pada menu utama, klik Jalankan Jalankan > 'Main'.
  3. Di jendela Jalankan alat (Tampilkan > Alat Windows > Run), pada tab Utama , 5 baris samples.nyctaxi.trips pertama tabel muncul.

Langkah 6: Debug kode

  1. Dengan kluster target masih berjalan, dalam kode sebelumnya, klik gutter di samping untuk df.limit(5).show() mengatur titik henti.
  2. Pada menu utama, klik Jalankan > Debug 'Main'.
  3. Di jendela alat Debug (Lihat > Alat Windows > Debug), pada tab Konsol , klik ikon kalkulator (Evaluasi Ekspresi).
  4. Masukkan ekspresi df.schema dan klik Evaluasi untuk memperlihatkan skema DataFrame.
  5. Di bilah samping jendela alat Debug , klik ikon panah hijau (Lanjutkan Program).
  6. Di panel Konsol , 5 baris samples.nyctaxi.trips pertama tabel muncul.

Men-debug proyek IntelliJ IDEA

Langkah berikutnya

Untuk mempelajari selengkapnya tentang Databricks Connect, lihat artikel seperti berikut ini: