Databricks

Mengenkripsi traffic jaringan

Praktik terbaiknya adalah mengenkripsi traffic jaringan antara aplikasi Looker dan database Anda. Pertimbangkan salah satu opsi yang dijelaskan di halaman dokumentasi Mengaktifkan akses database yang aman.

Membuat pengguna Looker

Looker mengautentikasi ke Databricks dengan token akses pribadi. Ikuti dokumentasi Databricks untuk membuat token akses pribadi bagi pengguna Databricks yang akan digunakan di Looker.

Tambahkan izin ke pengguna ini dengan GRANT.

Setidaknya, pengguna Looker harus memiliki izin SELECT dan READ_METADATA.

GRANT SELECT ON DATABASE <YOUR_DATABASE> TO `<looker>@<your.databricks.com>`
GRANT READ_METADATA ON DATABASE <YOUR_DATABASE> TO `<looker>@<your.databricks.com>`

Informasi server

Ikuti dokumentasi Databricks untuk menemukan Jalur HTTP untuk cluster Databricks Anda. Ini akan disebut sebagai <YOUR_HTTP_PATH> di halaman ini.

Menyiapkan tabel turunan persisten

Untuk menggunakan tabel turunan persisten, buat database terpisah.

CREATE DATABASE <YOUR_SCRATCH_DATABASE>

Tindakan ini juga akan memerlukan izin pengguna berbasis tulis tambahan untuk diberikan.

GRANT SELECT CREATE MODIFY ON DATABASE <YOUR_SCRATCH_DATABASE> TO `<looker>@<your.databricks.com>`
GRANT READ_METADATA ON DATABASE <YOUR_SCRATCH_DATABASE> TO `<looker>@<your.databricks.com>`

Membuat koneksi Looker ke database Anda

Di bagian Admin di Looker, pilih Koneksi, lalu klik Tambahkan Koneksi.

Isi detail koneksi. Sebagian besar setelan umum untuk sebagian besar dialek database. Lihat halaman dokumentasi Menghubungkan Looker ke database Anda untuk mengetahui informasinya. Beberapa setelan akan dijelaskan di bawah ini:

  • Nama: Tentukan nama koneksi. Ini adalah cara Anda akan merujuk ke koneksi dalam project LookML.
  • Dialek: Tentukan dialek Databricks.
  • Host: Tentukan URL ruang kerja Databricks. Contoh, dbc-xxxxxxxx.cloud.databricks.com/.
  • Port: Tentukan port database. Defaultnya adalah 443.
  • Database: Tentukan nama database yang akan digunakan untuk kueri Looker. Nilai defaultnya adalah default.
  • Katalog: Untuk database Databricks dengan Unity Catalog yang diaktifkan, tentukan nama katalog yang akan digunakan untuk kueri Looker. Jika Anda tidak menentukan katalog, Looker hanya akan mengakses skema dari katalog default. Lihat Fungsi Looker dengan Databricks Unity Catalog untuk mengetahui informasi selengkapnya.
  • Autentikasi: Pilih Database Account atau OAuth:
    • Gunakan Database Account untuk menentukan token akses pribadi Databricks yang akan digunakan untuk terhubung ke Looker (lihat bagian Membuat pengguna Looker untuk mengetahui petunjuknya).
      • Untuk Nama pengguna, masukkan nilai token (jangan masukkan email pengguna Databricks di kolom ini).
      • Untuk Sandi, masukkan token akses pribadi Databricks.
    • Gunakan OAuth untuk mengonfigurasi OAuth untuk koneksi. Lihat bagian Mengonfigurasi OAuth untuk koneksi Databricks untuk mengetahui informasi selengkapnya.
  • Aktifkan PDT: Gunakan tombol ini untuk mengaktifkan tabel turunan persisten. Jika PDT diaktifkan, jendela Koneksi akan menampilkan setelan PDT tambahan dan bagian Penggantian PDT. Catatan: PDT tidak didukung untuk koneksi Databricks yang menggunakan OAuth.
  • Database Temp: Masukkan database yang ingin Anda gunakan untuk menyimpan PDT.
  • Jumlah maksimum koneksi builder PDT: Tentukan jumlah build PDT serentak yang mungkin terjadi pada koneksi ini. Menetapkan nilai ini terlalu tinggi dapat berdampak negatif pada waktu kueri. Untuk mengetahui informasi selengkapnya, lihat halaman dokumentasi Menghubungkan Looker ke database.
  • Parameter JDBC tambahan: Tambahkan parameter JDBC Spark tambahan.

  • Jadwal Pemeliharaan Datagroup dan PDT: Ekspresi cron yang menunjukkan kapan Looker harus memeriksa datagroup dan tabel turunan persisten. Baca selengkapnya tentang setelan ini dalam dokumentasi Jadwal Pemeliharaan Datagroup dan PDT.

  • SSL: Centang untuk menggunakan koneksi SSL.

  • Verify SSL: Periksa untuk menerapkan verifikasi sertifikat SSL yang ketat.

  • Koneksi maksimum per node: Anda dapat membiarkan setelan ini pada nilai default pada awalnya. Baca selengkapnya tentang setelan ini di bagian Koneksi maksimum per node di halaman dokumentasi Menghubungkan Looker ke database.

  • Connection Pool Timeout: Anda dapat membiarkan setelan ini pada nilai default pada awalnya. Baca selengkapnya tentang setelan ini di bagian Connection Pool Timeout di halaman dokumentasi Menghubungkan Looker ke database.

  • Pra-cache SQL Runner: Untuk menyebabkan SQL Runner tidak memuat informasi tabel secara otomatis dan memuat informasi tabel hanya saat tabel dipilih, hapus centang pada kotak ini. Baca selengkapnya tentang setelan ini di bagian SQL Runner Precache di halaman dokumentasi Menghubungkan Looker ke database Anda.

  • Zona Waktu Database: Tentukan zona waktu yang akan digunakan di database. Kosongkan kolom ini jika Anda tidak ingin konversi zona waktu. Lihat halaman dokumentasi Menggunakan setelan zona waktu untuk mengetahui informasi selengkapnya.

Klik Uji untuk menguji koneksi dan memastikan koneksi dikonfigurasi dengan benar. Jika Anda melihat Dapat Terhubung, tekan Hubungkan. Tindakan ini akan menjalankan pengujian koneksi lainnya untuk memverifikasi bahwa akun layanan disiapkan dengan benar dan dengan peran yang sesuai. Lihat halaman dokumentasi Menguji konektivitas database untuk mengetahui informasi pemecahan masalah.

Fungsi Looker dengan Databricks Unity Catalog

Looker mendukung koneksi ke database Databricks dengan Unity Catalog yang diaktifkan. Anda dapat menentukan nama katalog di kolom Catalog pada jendela Connection Looker saat membuat koneksi Looker ke database, atau saat mengedit koneksi Looker yang ada ke database Databricks.

Jika database Databricks diaktifkan untuk Unity Catalog, Anda dapat menentukan katalog Databricks di kolom Katalog pada koneksi Looker. Saat Anda menentukan katalog Databricks, Looker akan menggunakan katalog dalam skenario berikut:

  • Saat membuat project LookML baru dari database Anda, Looker akan membuat file project berdasarkan tabel dalam katalog yang dikonfigurasi koneksi Anda.
  • Untuk project yang ada, saat menggunakan IDE Looker untuk membuat tampilan dari tabel, Looker hanya akan membuat file tampilan dari tabel dalam katalog yang dikonfigurasi koneksi Anda.
  • Saat menggunakan SQL Runner, Anda hanya dapat memilih skema dari katalog yang dikonfigurasi koneksi.

Jika database Databricks Anda diaktifkan untuk Unity Catalog dan koneksi Looker tidak memiliki nilai di kolom Catalog, sebagian besar fungsi Looker hanya akan mengakses skema dari katalog default, seperti dalam skenario berikut:

  • Saat membuat project LookML baru dari database Anda, Looker akan membuat file project berdasarkan tabel dalam katalog default Katalog Unity.
  • Untuk project yang ada, saat menggunakan Looker IDE untuk membuat tampilan dari tabel, Looker hanya dapat membuat file tampilan dari tabel dalam katalog default Katalog Unity.
  • Saat menggunakan SQL Runner, Anda hanya dapat memilih skema dari katalog default Katalog Unity.

Mengonfigurasi OAuth untuk koneksi Databricks

Looker mendukung OAuth untuk koneksi Databricks, yang berarti setiap pengguna Looker melakukan autentikasi ke database dan memberikan otorisasi kepada Looker untuk menjalankan kueri di database dengan akun pengguna OAuth pengguna itu sendiri.

OAuth memungkinkan administrator database melakukan tugas berikut:

  • Mengaudit pengguna Looker yang menjalankan kueri terhadap database
  • Menerapkan kontrol akses berbasis peran menggunakan izin tingkat database
  • Gunakan token OAuth untuk semua proses dan tindakan yang mengakses database, bukan menyematkan ID dan sandi database di beberapa tempat
  • Mencabut otorisasi untuk pengguna tertentu melalui database secara langsung

Dengan koneksi Databricks yang menggunakan OAuth, pengguna harus login lagi secara berkala saat token OAuth mereka habis masa berlakunya.

Perhatikan hal berikut untuk koneksi OAuth tingkat database:

  • Jika pengguna membiarkan token OAuth-nya berakhir masa berlakunya, jadwal atau pemberitahuan Looker apa pun yang dimiliki pengguna akan terpengaruh. Untuk mencegah hal ini, Looker akan mengirim email notifikasi kepada pemilik setiap jadwal dan setiap pemberitahuan sebelum masa berlaku token OAuth aktif saat ini berakhir. Looker akan mengirim email notifikasi ini 14 hari, 7 hari, dan 1 hari sebelum masa berlaku token berakhir. Pengguna dapat membuka halaman pengguna Looker untuk memberikan otorisasi ulang kepada Looker ke database dan menghindari gangguan pada jadwal dan pemberitahuan mereka. Lihat halaman dokumentasi Mempersonalisasi setelan akun pengguna untuk mengetahui detailnya.
  • Karena koneksi database yang menggunakan OAuth bersifat "per pengguna", kebijakan penyimpanan dalam cache juga bersifat per pengguna, bukan hanya per kueri. Artinya, alih-alih menggunakan hasil yang di-cache setiap kali kueri yang sama dijalankan dalam periode penyimpanan dalam cache, Looker hanya akan menggunakan hasil yang di-cache jika pengguna yang sama telah menjalankan kueri yang sama dalam periode penyimpanan dalam cache. Untuk informasi selengkapnya tentang penyimpanan dalam cache, lihat halaman dokumentasi Menyimpan kueri ke dalam cache.
  • Tabel turunan persisten (PDT) tidak didukung untuk koneksi Databricks dengan OAuth.
  • Saat admin Looker menggunakan sudo sebagai pengguna lain, admin akan menggunakan token akses OAuth pengguna tersebut. Jika masa berlaku token akses pengguna telah habis, admin tidak dapat membuat token baru atas nama pengguna yang menggunakan sudo. Lihat halaman dokumentasi Pengguna untuk mengetahui informasi tentang penggunaan perintah sudo.
  • Saat pengguna login ke Databricks dari Looker menggunakan OAuth, Looker tidak menampilkan dialog izin pengguna yang eksplisit. Dengan menyiapkan OAuth dengan Looker, Anda secara implisit mengizinkan instance Looker mengakses database Databricks.
  • Untuk menggunakan OAuth untuk koneksi Databricks, Anda harus memiliki pengguna atau prinsipal layanan Databricks yang dapat digunakan untuk kueri Looker, dan Anda harus memberi pengguna dan prinsipal layanan izin Databricks yang diperlukan Looker untuk mengakses sumber data dan melakukan tindakan yang diperlukan dalam Databricks.

Untuk membuat koneksi Databricks ke Looker menggunakan OAuth, Anda harus melakukan langkah-langkah umum berikut, yang dijelaskan di bagian berikut:

  1. Mengaktifkan aplikasi OAuth kustom di Databricks
  2. Mengonfigurasi koneksi di Looker

Mengaktifkan aplikasi OAuth kustom di Databricks

Untuk menggunakan OAuth untuk koneksi Looker ke Databricks, Anda harus mengaktifkan Looker sebagai aplikasi OAuth kustom untuk database Databricks dengan mengikuti langkah-langkah berikut:

  1. Login ke konsol akun Databricks.
  2. Klik ikon Setelan di panel samping.
  3. Klik tab App Connections di jendela Settings.
  4. Di tab App Connections, klik Add connection.
  5. Masukkan nilai berikut di dialog Add connection Databricks:

    • Nama Aplikasi: Berikan nama deskriptif, seperti "Integrasi Looker".
    • URL Alihan: Masukkan URL Looker tempat Databricks akan mengalihkan pengguna setelah otorisasi berhasil, menggunakan format ini (ganti example.looker.com dengan URL instance Looker Anda):

      https://example.looker.com/external_oauth/redirect
      
    • Cakupan akses: Pilih SQL untuk mengizinkan Looker membuat kueri data melalui SQL.

    • Buat rahasia klien: Aktifkan opsi ini.

  6. Klik Tambahkan di dialog Tambahkan koneksi Databricks.

  7. Salin dan simpan dengan aman Client ID dan Client Secret yang dibuat Databricks.

Pendaftaran aplikasi OAuth mungkin memerlukan waktu hingga 30 menit untuk diproses di database Databricks. Untuk informasi selengkapnya, lihat dokumentasi Databricks resmi.

Mengonfigurasi koneksi di Looker

Setelah mengonfigurasi Looker sebagai aplikasi OAuth kustom di database Databricks, Anda dapat mengonfigurasi koneksi Looker ke Databricks yang menggunakan OAuth.

  1. Di bagian Admin di Looker, pilih Koneksi, lalu klik Tambahkan Koneksi.
  2. Isi detail koneksi, seperti yang dijelaskan di bagian Membuat koneksi Looker ke database Anda di halaman ini.
  3. Pilih opsi OAuth di kolom Authentication.
  4. Saat Anda memilih opsi OAuth, Looker akan menampilkan kolom Client ID OAuth dan Rahasia Klien OAuth. Untuk nilai ini, masukkan Client ID dan Client Secret yang dibuat oleh Databricks saat Anda mengaktifkan Looker sebagai aplikasi OAuth kustom di Databricks.
  5. Pilih tombol Test di bagian bawah halaman Connections Settings untuk memastikan Looker berhasil membuat alur OAuth dan terhubung ke instance Databricks Anda.

Dukungan fitur

Agar Looker mendukung beberapa fitur, dialek database Anda juga harus mendukungnya.

Databricks mendukung fitur berikut mulai Looker 24.20:

Fitur Didukung?
Level Dukungan
Didukung
Looker (Google Cloud core)
Ya
Agregat Simetris
Ya
Tabel Turunan
Ya
Tabel Turunan SQL Persisten
Ya
Tabel Turunan Berbasis Persisten
Ya
Tampilan Stabil
Ya
Penghentian Kueri
Ya
Pivot berbasis SQL
Ya
Zona waktu
Ya
SSL
Ya
Subtotal
Ya
Parameter Tambahan JDBC
Ya
Peka Huruf Besar/Kecil
Ya
Jenis Lokasi
Ya
Jenis Daftar
Ya
Persentil
Ya
Persentil Berbeda
Tidak
Proses Tampilkan SQL Runner
Tidak
SQL Runner Describe Table
Ya
SQL Runner Show Indexes
Tidak
SQL Runner Select 10
Ya
Jumlah SQL Runner
Ya
SQL Explain
Ya
Kredensial Oauth
Ya
Komentar Konteks
Ya
Penggabungan Koneksi
Tidak
Sketsa HLL
Tidak
Kesadaran Agregat
Ya
PDT inkremental
Ya
Milidetik
Ya
Mikrodetik
Ya
Tampilan Terwujud
Tidak
Perkiraan Jumlah Berbeda
Tidak