Anda dapat mengonfigurasi instance Databricks agar berfungsi dengan Looker untuk menganalisis dan memvisualisasikan data Anda untuk pelaporan operasional. Looker hanya terhubung ke Databricks jika Unity Catalog diaktifkan. Penyiapan memerlukan enkripsi traffic jaringan, pembuatan pengguna Looker khusus, dan konfigurasi izin pengguna.
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 melakukan autentikasi ke Databricks dengan token akses pribadi. Ikuti dokumentasi Databricks guna membuat token akses pribadi untuk 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 HTTP Path untuk cluster Databricks Anda. Hal 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>
Hal ini juga akan memerlukan pemberian izin pengguna berbasis tulis tambahan.
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 Connections, lalu klik Add Connection.
Isi detail koneksi. Sebagian besar setelan bersifat umum untuk sebagian besar dialek database. Lihat halaman dokumentasi Menghubungkan Looker ke database Anda untuk mengetahui informasi selengkapnya. Beberapa setelan dijelaskan di bawah ini:
- Name: Tentukan nama koneksi. Ini adalah cara Anda akan merujuk ke koneksi dalam project LookML.
- Dialect: Tentukan dialek Databricks.
- Host: Tentukan URL ruang kerja Databricks. Contoh,
dbc-yyyyyyyy.cloud.databricks.com/. - Port: Tentukan port database. Defaultnya adalah 443.
- Database: Tentukan nama database yang akan digunakan untuk kueri Looker. Nilai defaultnya adalah
default. - Catalog: Untuk database Databricks dengan Unity Catalog 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.
- Authentication: 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 Username, masukkan nilai
token(jangan masukkan email pengguna Databricks di kolom ini). - Untuk Password, masukkan token akses pribadi Databricks.
- Untuk Username, masukkan nilai
- Gunakan OAuth guna mengonfigurasi OAuth untuk koneksi. Lihat bagian Mengonfigurasi OAuth untuk koneksi Databricks untuk mengetahui informasi selengkapnya.
- Gunakan Database Account untuk menentukan token akses pribadi Databricks yang akan digunakan untuk terhubung ke Looker (lihat bagian Membuat pengguna Looker untuk mengetahui petunjuknya).
- Enable PDTs: Gunakan tombol ini untuk mengaktifkan tabel turunan persisten. Jika PDT diaktifkan, jendela Connection akan menampilkan setelan PDT tambahan dan bagian PDT Overrides. Catatan: PDT tidak didukung untuk koneksi Databricks yang menggunakan OAuth.
- Temp Database: Masukkan database yang ingin Anda gunakan untuk menyimpan PDT.
- Jumlah maksimum koneksi builder PDT: Tentukan jumlah kemungkinan build PDT serentak 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 tambahan. Lihat bagian Parameter JDBC yang didukung di halaman ini untuk mengetahui daftar parameter yang didukung Looker.
Maintenance Schedule: Ekspresi
cronyang menunjukkan kapan Looker harus memeriksa grup data dan tabel turunan persisten. Baca selengkapnya tentang setelan ini di dokumentasi Jadwal Pemeliharaan.SSL: Centang untuk menggunakan koneksi SSL.
Verify SSL: Centang 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 Anda.
Connection Pool Timeout: Anda dapat membiarkan setelan ini pada nilai default pada awalnya. Baca selengkapnya tentang setelan ini di bagian Connection Pool Timeout pada halaman dokumentasi Connecting Looker to your database.
SQL Runner Precache: Untuk membuat SQL Runner tidak melakukan pramuat informasi tabel dan hanya memuat informasi tabel saat tabel dipilih, hapus centang pada kotak ini. Baca selengkapnya tentang setelan ini di bagian SQL Runner Precache pada halaman dokumentasi Connecting Looker to your database.
Fetch Information Schema For SQL Writing: Jika setelan ini diaktifkan, Looker akan menggunakan skema informasi database Anda untuk mengoptimalkan penulisan SQL. Baca selengkapnya tentang setelan ini di bagian Mengambil Skema Informasi untuk Penulisan SQL di halaman dokumentasi Menghubungkan Looker ke database Anda.
Zona Waktu Database: Tentukan zona waktu yang akan digunakan dalam database. Kosongkan kolom ini jika Anda tidak menginginkan konversi zona waktu. Lihat halaman dokumentasi Menggunakan setelan zona waktu untuk mengetahui informasi selengkapnya.
Untuk memverifikasi bahwa koneksi berhasil, klik tombol Test Connection di bagian Status details di bagian bawah halaman Connections Settings.
Jika Looker menampilkan Can Connect, tekan Connect untuk membuat koneksi.
Koneksi database Anda kemudian akan ditambahkan ke daftar di halaman Admin Connections Looker.
Fungsi Looker dengan Databricks Unity Catalog
Looker mendukung koneksi ke database Databricks dengan Unity Catalog diaktifkan. Anda dapat menentukan nama katalog di kolom Catalog di jendela Connection Looker saat Anda membuat koneksi Looker ke database, atau saat Anda mengedit koneksi Looker yang ada ke database Databricks.
Jika database Databricks Anda diaktifkan untuk Unity Catalog, Anda dapat menentukan katalog Databricks di kolom Catalog pada koneksi Looker. Saat Anda menentukan katalog Databricks, Looker akan menggunakan katalog tersebut 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 sudah ada, saat menggunakan Looker IDE untuk membuat tabel virtual dari tabel, Looker hanya akan membuat file tabel virtual dari tabel di katalog yang dikonfigurasi koneksi Anda.
- Saat menggunakan SQL Runner, Anda hanya dapat memilih skema dari katalog yang dikonfigurasi koneksi Anda.
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 di katalog default Unity Catalog.
- Untuk project yang sudah ada, saat menggunakan Looker IDE untuk membuat tampilan dari tabel, Looker hanya dapat membuat file tampilan dari tabel di katalog default Unity Catalog.
- Saat menggunakan SQL Runner, Anda hanya dapat memilih skema dari katalog default Unity Catalog.
Mengonfigurasi OAuth untuk koneksi Databricks
Looker mendukung OAuth untuk koneksi Databricks, yang berarti setiap pengguna Looker melakukan autentikasi ke database dan memberi otorisasi kepada Looker untuk menjalankan kueri pada database dengan akun pengguna OAuth milik 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
- Menggunakan token OAuth untuk semua proses dan tindakan yang mengakses database, alih-alih 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 masa berlaku token OAuth mereka berakhir.
Perhatikan hal berikut untuk koneksi OAuth tingkat database:
- Jika pengguna membiarkan token OAuth-nya habis masa berlakunya, jadwal atau pemberitahuan Looker yang dimiliki pengguna tersebut akan terpengaruh. Untuk mencegah hal ini, Looker akan mengirimkan email notifikasi kepada pemilik setiap jadwal dan setiap pemberitahuan sebelum masa berlaku token OAuth aktif saat ini berakhir. Looker mengirimkan 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 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 caching juga berlaku per pengguna dan tidak hanya per kueri. Artinya, alih-alih menggunakan hasil yang di-cache setiap kali kueri yang sama dijalankan dalam periode caching, Looker akan menggunakan hasil yang di-cache hanya jika pengguna yang sama telah menjalankan kueri yang sama dalam periode caching. Untuk informasi selengkapnya tentang caching, lihat halaman dokumentasi Meng-cache kueri.
- Tabel turunan persisten (PDT) tidak didukung untuk koneksi Databricks dengan OAuth.
- Saat administrator Looker melakukan sudo sebagai pengguna lain, administrator tersebut akan menggunakan token akses OAuth pengguna tersebut. Jika masa berlaku token akses pengguna telah berakhir, administrator tidak dapat membuat token baru atas nama pengguna yang di-sudo. Lihat halaman dokumentasi Pengguna untuk mengetahui informasi tentang cara menggunakan perintah
sudo. - Saat pengguna memulai alur otorisasi OAuth untuk koneksi Databricks di Looker, Looker akan menampilkan dialog Authorize OAuth Connection yang memberi tahu pengguna bahwa mengizinkan koneksi akan memungkinkan instance Looker mengakses data atas nama mereka, dan bahwa pengguna Looker yang memiliki hak istimewa, seperti administrator atau developer, mungkin memiliki visibilitas ke data mereka. Pengguna harus memilih Authorize sebelum melanjutkan login ke Databricks. Informasi izin ini disimpan di penyimpanan lokal browser pengguna, dan dialog akan muncul lagi jika penyimpanan lokal dihapus. Setelah pengguna memilih Authorize, Databricks sendiri tidak akan menampilkan dialog izin pengguna tambahan.
- Untuk menggunakan OAuth untuk koneksi Databricks, Anda harus memiliki pengguna atau akun utama layanan Databricks yang dapat digunakan untuk kueri Looker, dan Anda harus memberikan izin Databricks kepada pengguna dan akun utama layanan yang akan 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:
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:
- Login ke konsol akun Databricks.
- Klik ikon Setelan di panel samping.
- Klik tab App Connections di jendela Settings.
- Di tab App Connections, klik Add connection.
Masukkan nilai berikut dalam dialog Add connection Databricks:
- Application Name: Berikan nama deskriptif, seperti "Looker Integration".
Redirect URLs: Masukkan URL Looker tempat Databricks akan mengalihkan pengguna setelah otorisasi berhasil, menggunakan format ini (ganti
example.looker.comdengan URL instance Looker Anda):https://example.looker.com/external_oauth/redirectCakupan akses: Pilih SQL untuk mengizinkan Looker mengkueri data melalui SQL.
Buat rahasia klien: Aktifkan opsi ini.
Klik Add di dialog Add connection Databricks.
Salin dan simpan dengan aman Client ID dan Client Secret yang dihasilkan Databricks.
Pendaftaran aplikasi OAuth mungkin memerlukan waktu hingga 30 menit untuk diproses di database Databricks. Untuk mengetahui 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.
- Di bagian Admin di Looker, pilih Connections, lalu klik Add Connection.
- Isi detail koneksi, seperti yang dijelaskan di bagian Membuat koneksi Looker ke database Anda di halaman ini.
- Pilih opsi OAuth di kolom Authentication.
- Saat Anda memilih opsi OAuth, Looker akan menampilkan kolom OAuth Client ID dan OAuth Client Secret. Untuk nilai ini, masukkan Client ID dan Client Secret yang dibuat oleh Databricks saat Anda mengaktifkan Looker sebagai aplikasi OAuth kustom di Databricks.
- Pilih tombol Test di bagian bawah halaman Connections Settings untuk memastikan Looker dapat berhasil membuat alur OAuth dan terhubung ke instance Databricks Anda.
Parameter JDBC yang didukung
Untuk Databricks, Looker mendukung parameter JDBC berikut di kolom Additional JDBC parameters untuk koneksi. Lihat dokumentasi database Anda untuk mengetahui informasi tentang parameter ini.
Auth_FlowAuthMechcatalogSchemaSwitchConnSchemahttpPathLogLevelOAuth2ClientIdOAuth2SecretPWDSocketTimeoutssltransportModeUIDUserAgentEntry
Dukungan fitur
Agar Looker dapat mendukung beberapa fitur, dialek database Anda juga harus mendukungnya.
Databricks mendukung fitur berikut mulai Looker 26.22:
| Fitur | Didukung? |
|---|---|
| Looker (Google Cloud core) | |
| Agregat simetris | |
| Tabel turunan | |
| Tabel turunan SQL persisten | |
| Tabel turunan berbasis persisten | |
| Tampilan stabil | |
| Penghentian kueri | |
| Pivot berbasis SQL | |
| Zona waktu | |
| SSL | |
| Subtotal | |
| Parameter tambahan JDBC | |
| Peka huruf besar/kecil | |
| Jenis lokasi | |
| Jenis daftar | |
| Persentil | |
| Persentil berbeda | |
| SQL Runner Show Processes | |
| SQL Runner Describe Table | |
| SQL Runner Show Indexes | |
| SQL Runner Select 10 | |
| SQL Runner Count | |
| SQL Explain | |
| Kredensial OAuth 2.0 | |
| Komentar konteks | |
| Penggabungan koneksi | |
| Sketsa HLL | |
| Aggregate awareness | |
| PDT inkremental | |
| Milidetik | |
| Mikrodetik | |
| Tampilan terwujud | |
| Pengukuran dari periode ke periode | |
| Jumlah perkiraan berbeda | |
| Model analisis dalam database | |
| Kalender kustom |