Bagikan melalui


Databricks Connect untuk R

Catatan

Artikel ini membahas sparklyr integrasi dengan Databricks Connect untuk Databricks Runtime 13.0 ke atas. Integrasi ini tidak disediakan oleh Databricks atau didukung langsung oleh Databricks.

Untuk pertanyaan, buka Posit Community.

Untuk melaporkan masalah, buka bagian Masalah repositori sparklyr di GitHub.

Untuk informasi selengkapnya, lihat Databricks Connect v2 dalam sparklyr dokumentasi.

Artikel ini menunjukkan cara cepat memulai Databricks Connect dengan menggunakan R, sparklyr, dan RStudio Desktop.

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

Tutorial

Tutorial ini menggunakan RStudio Desktop dan Python 3.10. Jika Anda belum menginstalnya, instal R dan RStudio Desktop dan Python 3.10.

Untuk informasi tambahan tentang tutorial ini, lihat bagian "Databricks Connect" dari Spark Connect, dan Databricks Connect v2 di sparklyr situs web.

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.

Langkah 1: Membuat token akses pribadi

Catatan

Databricks Connect untuk autentikasi R saat ini hanya mendukung token akses pribadi Azure Databricks.

Tutorial ini menggunakan autentikasi token akses pribadi Azure Databricks untuk mengautentikasi dengan ruang kerja Azure Databricks Anda.

Jika Anda sudah memiliki token akses pribadi Azure Databricks, lewati ke Langkah 2. Jika Anda tidak yakin apakah Anda sudah memiliki token akses pribadi Azure Databricks, Anda dapat mengikuti langkah ini tanpa memengaruhi token akses pribadi Azure Databricks lainnya di akun pengguna Anda.

Untuk membuat token akses pribadi:

  1. Di ruang kerja Azure Databricks Anda, klik nama pengguna Azure Databricks Anda di bilah atas, lalu pilih Pengaturan dari menu drop-down.
  2. Klik Pengembang.
  3. Di samping Token akses, klik Kelola.
  4. Klik Buat token baru.
  5. (Opsional) Masukkan komentar yang membantu Anda mengidentifikasi token ini di masa mendatang, dan mengubah masa pakai default token selama 90 hari. Untuk membuat token tanpa masa pakai (tidak disarankan), biarkan kotak Seumur Hidup (hari) kosong (kosong).
  6. Klik Buat.
  7. Salin token yang ditampilkan ke lokasi aman, lalu klik Selesai.

Catatan

Pastikan untuk menyimpan token yang disalin di lokasi yang aman. Jangan bagikan token yang Anda salin dengan orang lain. Jika Anda kehilangan token yang disalin, Anda tidak dapat meregenerasi token yang sama persis. Sebagai gantinya, Anda harus mengulangi prosedur ini untuk membuat token baru. Jika Anda kehilangan token yang disalin, atau Anda yakin bahwa token telah disusupi, Databricks sangat menyarankan agar Anda segera menghapus token tersebut dari ruang kerja Anda dengan mengklik ikon tempat sampah (Cabut) di samping token di halaman Token akses.

Jika Anda tidak dapat membuat atau menggunakan token di ruang kerja, ini mungkin karena administrator ruang kerja Anda telah menonaktifkan token atau belum memberi Anda izin untuk membuat atau menggunakan token. Lihat administrator ruang kerja Anda atau berikut ini:

Langkah 2: Membuat proyek

  1. Mulai RStudio Desktop.
  2. Pada menu utama, klik File > Proyek Baru.
  3. Pilih Direktori Baru.
  4. Pilih Proyek Baru.
  5. Untuk Nama direktori dan Buat proyek sebagai subdirektori, masukkan nama direktori proyek baru dan tempat untuk membuat direktori proyek baru ini.
  6. Pilih Gunakan renv dengan proyek ini. Jika diminta untuk menginstal versi paket yang renv diperbarui, klik Ya.
  7. Klik Buat Project.

Membuat proyek RStudio Desktop

Langkah 3: Tambahkan paket Databricks Connect dan dependensi lainnya

  1. Pada menu utama RStudio Desktop, klik Alat > Instal Paket.

  2. Biarkan Instal dari diatur ke Repositori (CRAN).

  3. Untuk Paket, masukkan daftar paket berikut yang merupakan prasyarat untuk paket Databricks Connect dan tutorial ini:

    sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
    
  4. Biarkan Instal ke Pustaka diatur ke lingkungan virtual R Anda.

  5. Pastikan bahwa Instal dependensi dipilih.

  6. Klik Pasang.

Menginstal dependensi paket Databricks Connect

  1. Saat Anda diminta dalam tampilan Konsol (Lihat > Pindahkan Fokus ke Konsol) untuk melanjutkan penginstalan, masukkan Y. Paket sparklyr dan pysparklyr dan dependensinya diinstal di lingkungan virtual R Anda.

  2. Di panel Konsol , gunakan reticulate untuk menginstal Python dengan menjalankan perintah berikut. (Databricks Connect untuk R mengharuskan reticulate dan Python diinstal terlebih dahulu.) Dalam perintah berikut, ganti 3.10 dengan versi utama dan minor versi Python yang diinstal pada kluster Azure Databricks Anda. Untuk menemukan versi utama dan minor ini, lihat bagian "Lingkungan sistem" dari catatan rilis untuk versi Databricks Runtime kluster Anda di versi dan kompatibilitas catatan rilis Databricks Runtime.

    reticulate::install_python(version = "3.10")
    
  3. Di panel Konsol , instal paket Databricks Connect dengan menjalankan perintah berikut. Dalam perintah berikut, ganti 13.3 dengan versi Databricks Runtime yang diinstal pada kluster Azure Databricks Anda. Untuk menemukan versi ini, pada halaman detail kluster Anda di ruang kerja Azure Databricks Anda, pada tab Konfigurasi , lihat kotak Versi Runtime Databricks.

    pysparklyr::install_databricks(version = "13.3")
    

    Jika Anda tidak tahu versi Databricks Runtime untuk kluster Anda atau Anda tidak ingin mencarinya, Anda dapat menjalankan perintah berikut sebagai gantinya, dan pysparklyr akan meminta kluster untuk menentukan versi Databricks Runtime yang benar untuk digunakan:

    pysparklyr::install_databricks(cluster_id = "<cluster-id>")
    

    Jika Anda ingin proyek Anda terhubung nanti ke kluster lain yang memiliki versi Databricks Runtime yang sama dari yang baru saja Anda tentukan, pysparklyr akan menggunakan lingkungan Python yang sama. Jika kluster baru memiliki versi Databricks Runtime yang berbeda, Anda harus menjalankan pysparklyr::install_databricks perintah lagi dengan versi Databricks Runtime atau ID kluster baru.

Langkah 4: Atur variabel lingkungan untuk URL ruang kerja, token akses, dan ID kluster

Databricks tidak menyarankan Agar Anda melakukan hard-code sensitif atau mengubah nilai seperti URL ruang kerja Azure Databricks, token akses pribadi Azure Databricks, atau ID kluster Azure Databricks ke dalam skrip R Anda. Sebagai gantinya, simpan nilai-nilai ini secara terpisah, misalnya dalam variabel lingkungan lokal. Tutorial ini menggunakan dukungan bawaan RStudio Desktop untuk menyimpan variabel lingkungan dalam .Renviron file.

  1. Buat .Renviron file untuk menyimpan variabel lingkungan, jika file ini belum ada, lalu buka file ini untuk pengeditan: di Konsol Desktop RStudio, jalankan perintah berikut:

    usethis::edit_r_environ()
    
  2. .Renviron Dalam file yang muncul (Lihat > Pindahkan Fokus ke Sumber), masukkan konten berikut. Dalam konten ini, ganti tempat penampung berikut:

    • Ganti <workspace-url> dengan URL per ruang kerja Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.
    • Ganti <personal-access-token> dengan token akses pribadi Azure Databricks Anda dari Langkah 1.
    • Ganti <cluster-id> dengan ID kluster Anda dari persyaratan tutorial ini.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
    
  3. Simpan file .Renviron.

  4. Muat variabel lingkungan ke R: pada menu utama, klik Mulai Ulang Sesi > R.

Mengatur variabel lingkungan untuk Databricks Connect

Langkah 5: Tambahkan kode

  1. Pada menu utama RStudio Desktop, klik File File Baru > R Skrip>.

  2. Masukkan kode berikut ke dalam file lalu simpan file (Simpan File>) sebagai demo.R:

    library(sparklyr)
    library(dplyr)
    library(dbplyr)
    
    sc <- sparklyr::spark_connect(
      master     = Sys.getenv("DATABRICKS_HOST"),
      cluster_id = Sys.getenv("DATABRICKS_CLUSTER_ID"),
      token      = Sys.getenv("DATABRICKS_TOKEN"),
      method     = "databricks_connect",
      envname    = "r-reticulate"
    )
    
    trips <- dplyr::tbl(
      sc,
      dbplyr::in_catalog("samples", "nyctaxi", "trips")
    )
    
    print(trips, n = 5)
    

Langkah 6: Jalankan kode

  1. Pada RStudio Desktop, di toolbar untuk demo.R file, klik Sumber.

    Menjalankan proyek RStudio Desktop

  2. Di Konsol, lima baris trips pertama tabel muncul.

  3. Dalam tampilan Koneksi (Tampilkan > Perlihatkan Koneksi), Anda dapat menjelajahi katalog, skema, tabel, dan tampilan yang tersedia.

    Tampilan Koneksi untuk proyek

Langkah 7: Debug kode

  1. demo.R Dalam file, klik gutter di samping untuk print(trips, n = 5) mengatur titik henti.
  2. Di toolbar untuk demo.R file, klik Sumber.
  3. Saat kode dijeda berjalan di titik henti, Anda dapat memeriksa variabel dalam tampilan Lingkungan (Lihat > Tampilkan Lingkungan).
  4. Pada menu utama, klik Debug > Lanjutkan.
  5. Di Konsol, lima baris trips pertama tabel muncul.

Men-debug proyek RStudio Desktop