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.
- Untuk versi Python dari artikel ini, lihat Databricks Connect untuk Python.
- Untuk versi R artikel ini, lihat Databricks Connect untuk R.
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
danconfiguration
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 MLJDK 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:
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:
Instal
curl
danzip
melalui WSL. Untuk informasi selengkapnya, lihat dokumentasi sistem operasi Anda.Gunakan WSL untuk menginstal Databricks CLI dengan menjalankan perintah berikut:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
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 seperticommand not found: databricks
, atau jika Anda menjalankandatabricks -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:
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, misalnyahttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --configure-cluster --host <workspace-url>
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 perintahdatabricks auth env --profile <profile-name>
.Di browser web Anda, selesaikan instruksi di layar untuk masuk ke ruang kerja Azure Databricks Anda.
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.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
Mulai Ide IntelliJ.
Pada menu utama, klik File > Proyek Baru>.
Beri proyek Anda beberapa Nama yang bermakna.
Untuk Lokasi, klik ikon folder, dan selesaikan petunjuk arah di layar untuk menentukan jalur ke proyek Scala baru Anda.
Untuk Bahasa, klik Scala.
Untuk Sistem build, klik sbt.
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.
Di daftar drop-down sbt, pilih versi terbaru.
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 ML2.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.
Pastikan kotak Unduh sumber di samping Scala dicentang.
Untuk Awalan paket, masukkan beberapa nilai awalan paket untuk sumber proyek Anda, misalnya
org.example.application
.Pastikan kotak Tambahkan kode sampel dicentang.
Klik Buat.
Langkah 3: Tambahkan paket Databricks Connect
Dengan proyek Scala baru Anda terbuka, di jendela alat Proyek Anda (Lihat > Alat Proyek Windows>), buka file bernama
build.sbt
, di target nama> proyek.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.Klik ikon Muat pemberitahuan perubahan sbt untuk memperbarui proyek Scala Anda dengan lokasi dan dependensi pustaka baru.
Tunggu hingga
sbt
indikator kemajuan di bagian bawah IDE menghilang. Prosessbt
pemuatan mungkin perlu waktu beberapa menit untuk diselesaikan.
Langkah 4: Tambahkan kode
Di jendela alat Proyek Anda, buka file bernama
Main.scala
, di scala utama > src > nama> proyek.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
- Mulai kluster target di ruang kerja Azure Databricks jarak jauh Anda.
- Setelah kluster dimulai, pada menu utama, klik Jalankan Jalankan > 'Main'.
- Di jendela Jalankan alat (Tampilkan > Alat Windows > Run), pada tab Utama , 5 baris
samples.nyctaxi.trips
pertama tabel muncul.
Langkah 6: Debug kode
- Dengan kluster target masih berjalan, dalam kode sebelumnya, klik gutter di samping untuk
df.limit(5).show()
mengatur titik henti. - Pada menu utama, klik Jalankan > Debug 'Main'.
- Di jendela alat Debug (Lihat > Alat Windows > Debug), pada tab Konsol , klik ikon kalkulator (Evaluasi Ekspresi).
- Masukkan ekspresi
df.schema
dan klik Evaluasi untuk memperlihatkan skema DataFrame. - Di bilah samping jendela alat Debug , klik ikon panah hijau (Lanjutkan Program).
- Di panel Konsol , 5 baris
samples.nyctaxi.trips
pertama tabel muncul.
Langkah berikutnya
Untuk mempelajari selengkapnya tentang Databricks Connect, lihat artikel seperti berikut ini:
Untuk menggunakan jenis autentikasi Azure Databricks selain token akses pribadi Azure Databricks, lihat Mengonfigurasi properti koneksi.
Untuk menggunakan ID Lain, lihat yang berikut ini:
Untuk melihat contoh kode sederhana tambahan, lihat Contoh kode untuk Databricks Connect for Scala.
Untuk melihat contoh kode yang lebih kompleks, lihat contoh aplikasi untuk repositori Databricks Connect di GitHub, khususnya:
Untuk bermigrasi dari Databricks Connect untuk Databricks Runtime 12.2 LTS dan di bawah ini ke Databricks Connect untuk Databricks Runtime 13.3 LTS ke atas, lihat Migrasi ke Databricks Connect untuk Scala.