Bagikan melalui


Menggunakan Visual Studio Code dengan Databricks Koneksi untuk Scala

Catatan

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

Artikel ini membahas cara menggunakan Databricks Koneksi untuk Scala dengan Visual Studio Code. Databricks Koneksi memungkinkan Anda menyambungkan ID populer, server notebook, dan aplikasi kustom lainnya ke kluster Azure Databricks. Lihat Apa itu Databricks Koneksi?. Untuk versi Python artikel ini, lihat Menggunakan Visual Studio Code dengan Databricks Koneksi untuk Python.

Catatan

Sebelum mulai menggunakan Databricks Koneksi, Anda harus menyiapkan klien Databricks Koneksi.

Untuk menggunakan Databricks Koneksi dan Visual Studio Code dengan ekstensi Scala (Metals) untuk membuat, menjalankan, dan men-debug sampel proyek Scalasbt, ikuti instruksi berikut. Anda juga dapat menyesuaikan sampel ini dengan proyek Scala yang ada.

  1. Pastikan bahwa Java Development Kit (JDK) dan Scala diinstal secara lokal. Databricks merekomendasikan agar versi JDK dan Scala lokal Anda cocok dengan versi JDK dan Scala di kluster Azure Databricks Anda.

  2. Pastikan versi sbt terbaru diinstal secara lokal.

  3. Instal ekstensi Scala (Metals) untuk Visual Studio Code.

  4. Di Visual Studio Code, buka folder tempat Anda ingin membuat proyek Scala (File > Open Folder).

  5. Pada bilah samping, klik ikon ekstensi Logam , lalu klik Proyek Scala Baru.

  6. Di Palet Perintah, pilih templat bernama scala/hello-world.g8, dan selesaikan instruksi di layar untuk menyelesaikan pembuatan proyek Scala di folder yang ditentukan.

  7. Tambahkan pengaturan build proyek: Di tampilan Explorer (Lihat > Explorer), buka build.sbt file dari akar proyek, ganti konten file dengan yang berikut ini, dan simpan file:

    scalaVersion := "2.12.15"
    
    libraryDependencies += "com.databricks" % "databricks-connect" % "14.0.0"
    

    Ganti 2.12.15 dengan versi Scala yang diinstal, yang harus cocok dengan versi yang disertakan dengan versi Databricks Runtime pada kluster Anda.

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

  8. Tambahkan kode Scala: Buka src/main/scala/Main.scala file relatif terhadap root proyek, ganti konten file dengan yang berikut, dan simpan file:

    import com.databricks.connect.DatabricksSession
    import org.apache.spark.sql.SparkSession
    
    object Main extends App {
      val spark = DatabricksSession.builder().remote().getOrCreate()
      val df = spark.read.table("samples.nyctaxi.trips")
      df.limit(5).show()
    }
    
  9. Bangun proyek: Jalankan perintah >Metals: Impor build dari Palet Perintah.

  10. Tambahkan pengaturan eksekusi proyek: Dalam tampilan Jalankan & Debug (Lihat > Jalankan), klik tautan berlabel buat file launch.json.

  11. Di Palet Perintah, pilih Scala Debugger.

  12. Tambahkan konfigurasi eksekusi berikut ke launch.json file, lalu simpan file:

    {
      // Use IntelliSense to learn about possible attributes.
      // Hover to view descriptions of existing attributes.
      // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
      "version": "0.2.0",
      "configurations": [
        {
          "type": "scala",
          "request": "launch",
          "name": "Scala: Run main class",
          "mainClass": "Main",
          "args": [],
          "jvmOptions": []
        }
      ]
    }
    
  13. Jalankan proyek: Klik ikon putar (Mulai Debugging) di samping Scala: Jalankan kelas utama. Di tampilan Konsol Debug (Lihat > Konsolsamples.nyctaxi.trips Debug), 5 baris pertama tabel muncul. Semua kode Scala berjalan secara lokal, sementara semua kode Scala yang melibatkan operasi DataFrame berjalan pada kluster di ruang kerja Azure Databricks jarak jauh dan respons eksekusi dikirim kembali ke pemanggil lokal.

  14. Debug proyek: Atur titik henti dalam kode Anda, lalu klik ikon putar lagi. Semua kode Scala di-debug secara lokal, sementara semua kode Scala terus berjalan pada kluster di ruang kerja Azure Databricks jarak jauh. Kode mesin Spark inti tidak dapat di-debug langsung dari klien.