Mengonfigurasi Looker untuk menggunakan driver JDBC yang Tidak Dipaketkan
Untuk beberapa dialek yang didukung Looker, driver JDBC tidak dapat dikemas dalam file JAR Looker karena alasan terkait pemberian lisensi. Dalam hal ini, Anda harus menginstal driver JDBC di server Looker, lalu mengonfigurasi Looker untuk mendaftarkan driver yang tidak dikemas seperti yang dijelaskan di halaman ini.
Semua dialek dengan nilai "Tidak" pada bagian "Didukung?" memerlukan penginstalan driver JDBC yang tidak dikemas:
Dialek | Didukung? |
---|---|
Actian Avalanche | Tidak |
Amazon Athena | Ya |
Amazon Aurora MySQL | Ya |
Amazon Redshift | Ya |
Apache Druid | Ya |
Apache Druid 0.13+ | Ya |
Apache Druid 0.18+ | Ya |
Apache Hive 2.3 dan yang lebih baru | Ya |
Apache Hive 3.1.2+ | Ya |
Apache Spark 3+ | Ya |
ClickHouse | Ya |
Cloudera Impala 3.1+ | Ya |
Cloudera Impala 3.1+ dengan Native Driver | Tidak |
Cloudera Impala dengan Native Driver | Tidak |
DataVirtuality | Tidak |
Databricks | Ya |
Denodo 7 | Ya |
Denodo 8 | Ya |
Dremio | Ya |
Dremio 11+ | Ya |
Exasol | Ya |
Firebolt | Ya |
Legacy SQL Google BigQuery | Ya |
SQL Standar Google BigQuery | Ya |
PostgreSQL Google Cloud | Ya |
Google Cloud SQL | Ya |
Google Spanner | Ya |
Greenplum | Ya |
HyperSQL | Ya |
IBM Netezza | Ya |
MariaDB | Ya |
Microsoft Azure PostgreSQL | Ya |
Microsoft Azure SQL Database | Ya |
Microsoft Azure Synapse Analytics | Ya |
Microsoft SQL Server 2008+ | Ya |
Microsoft SQL Server 2012+ | Ya |
Microsoft SQL Server 2016 | Ya |
Microsoft SQL Server 2017+ | Ya |
MongoBI | Tidak |
MySQL | Ya |
MySQL 8.0.12+ | Ya |
Oracle | Ya |
Oracle ADWC | Ya |
PostgreSQL 9.5+ | Ya |
PostgreSQL versi 9.5 | Ya |
PrestoDB | Ya |
PrestoSQL | Ya |
SAP HANA | Ya |
SAP HANA 2+ | Ya |
SingleStore | Ya |
SingleStore 7+ | Ya |
Snowflake | Ya |
Teradata | Tidak |
Trino | Ya |
Vector | Tidak |
Vertica | Ya |
Prasyarat
Untuk menghubungkan Looker ke database yang memerlukan driver JDBC yang tidak dipaketkan, Anda memerlukan:
- Akses command line ke server Looker Anda.
- Driver JDBC sebagai file JAR. Dokumentasi khusus dialek mungkin berisi petunjuk tentang tempat mendownload file ini; jika tidak, kami menganggap Anda memiliki akses ke file JAR yang diperlukan.
- Simbol pengemudi untuk dialek Anda. Simbol driver adalah nilai string yang digunakan Looker secara internal untuk mencocokkan dialek dengan driver. Contoh di halaman ini menggunakan nilai generik
driver_symbol
. Lihat daftar simbol driver di halaman ini untuk mengetahui simbol yang digunakan Looker untuk mendaftarkan driver JDBC ke dialek. - Entri driver YAML untuk dialek Anda yang akan ditambahkan ke file konfigurasi
custom_jdbc_config.yml
. Lihat bagian Entri driver dalam file konfigurasi YAML di halaman ini untuk informasi selengkapnya.
Entri driver dalam file konfigurasi YAML
Berikut adalah contoh entri pengemudi dalam file custom_jdbc_config.yml
:
- name: driver_symbol
dir_name: driver_symbol
module_path: com.dialect.jdbc.DialectDriver
override_jdbc_url_subprotocol: driver_subprotocol # optional
Saat menulis entri driver untuk dialek Anda:
- File
custom_jdbc_config.yml
berbasis YAML, yang berarti indentasi dan spasi penting untuk diperhatikan. - Atribut
name
dandir_name
harus berupa simbol pengemudi yang diharapkan Looker untuk dialek Anda saat mendaftarkan driver JDBC. - Anda dapat menggunakan atribut
file_name
alih-alihdir_name
yang berisi jalur relatif daricustom_jdbc_drivers
ke file JAR driver JDBC.dir_name
direkomendasikan karena mempromosikan menjaga beberapa driver tetap terisolasi ke direktorinya sendiri dan mengurangi kemungkinan benturan class Java. - Properti
module_path
akan bergantung pada driver JDBC tertentu. Jalur tersebut harus menjadi jalur yang sepenuhnya memenuhi syarat ke class driver Java. Contoh ini menggunakan nilai generik, tetapi untuk menemukanmodule_path
tertentu yang digunakan driver, baca dokumentasinya tentang cara register class driver. override_jdbc_url_subprotocol
adalah argumen opsional yang digunakan untuk mengganti subprotokol yang digunakan dalam string JDBC yang dikirim Looker ke database. String JDBC standar akan terlihat seperti ini:
jdbc:mysql://localhost:3306/database_name[?propertyName1][=propertyValue1]
Dengan mysql
adalah subprotokol JDBC yang digunakan.
Jika Anda menentukan override_jdbc_url_subprotocol: driver_subprotocol
, string JDBC ini akan menjadi:
jdbc:driver_subprotocol://localhost:3306/database_name[?propertyName1][=propertyValue1]
Opsi ini diperlukan jika Anda perlu menggunakan driver JDBC yang tidak dikemas yang memerlukan subprotokol URL selain subprotokol URL default Looker. Biasanya, hal ini tidak diperlukan kecuali jika dokumentasi dialek secara eksplisit menyatakan bahwa hal itu perlu. MongoBI adalah contoh dialek yang memerlukan opsi ini.
Menginstal driver JDBC yang tidak dikemas
Ubah ke direktori dasar aplikasi Looker. Untuk dokumen ini, kami akan menganggapnya sebagai
looker
cd looker
Buat direktori bernama
custom_jdbc_drivers
. Ini adalah direktori tingkat atas untuk semua instalasi {i>driver<i} JDBC yang tidak dikemas. Jalur ke direktori ini seharusnyalooker/custom_jdbc_drivers
mkdir custom_jdbc_drivers
Dalam direktori
custom_jdbc_drivers
, buat subdirektori yang diberi nama dengan simbol pengemudi dialek Anda. Contoh ini menggunakan nilai generikdriver_symbol
. Jalur yang dihasilkan ke direktori akan terlihat sepertilooker/custom_jdbc_drivers/driver_symbol
cd custom_jdbc_drivers mkdir driver_symbol
Masukkan file {i>driver<i} JDBC untuk dialek Anda ke dalam direktori ini. Metodenya bergantung pada lokasi driver dialek Anda dapat ditemukan dan diupload ke server. Namun, pastikan file JAR yang relevan berada dalam direktori
driver_symbol
:looker/custom_jdbc_drivers/driver_symbol/
Contoh:
looker/custom_jdbc_drivers/driver_symbol/DialectDriver.jar
Memindahkan file yang diperlukan ke server Looker akan bervariasi berdasarkan tempat Anda mendapatkan file driver dan preferensi transfer file. Contoh perintah untuk mentransfer file ke direktori ini adalah
wget
,scp
,curl
, dll.Kembali ke direktori aplikasi Looker dan buat file konfigurasi dengan nama
custom_jdbc_config.yml
. Jalur ke file ini haruslooker/custom_jdbc_config.yml
. File ini akan berisi informasi yang diperlukan Looker untuk menemukan dan mendaftarkan driver JDBC kustom.cd looker vim custom_jdbc_config.yml
Tambahkan entri baru untuk dialek Anda ke dalam file konfigurasi
custom_jdbc_config.yml
. Lihat bagian Entri driver dalam file konfigurasi YAML di halaman ini untuk mendapatkan informasi tentang entri driver.- name: driver_symbol dir_name: driver_symbol module_path: com.dialect.jdbc.DialectDriver
Buat atau update file
lookerstart.cfg
agar aplikasi Looker dimulai dengan konfigurasi driver JDBC yang tidak dipaketkan. Jalur ke file ini haruslooker/lookerstart.cfg
. Tambahkan opsi--use-custom-jdbc-config
. Jika ada opsi lain, tambahkan opsi ini ke bagian akhir opsi startup Looker:LOOKERARGS="--use-custom-jdbc-config"
Jika
LOOKERARGS
ditetapkan di tempat selainlookerstart.cfg
, seperti di variabel lingkungan, Anda dapat menambahkan flag startup ini di sana. Atau, Anda dapat menyetelLOOKERARGS="${LOOKERARGS} --use-custom-jdbc-config"
sehingga nilai yang ada akan diperluas ke file ini.Mulai ulang aplikasi Looker. Dalam perintah ini, gunakan nama skrip startup Looker Anda, seperti
./looker
atau./looker.sh
./looker restart
atau
none ./looker stop ./looker start
Beberapa driver JDBC yang tidak dikemas
Jika Anda perlu mengonfigurasi lebih dari satu dialek untuk menggunakan driver JDBC yang tidak dikemas, proses di atas tetap berlaku. Direktori custom_jdbc_drivers
akan memiliki beberapa subdirektori dialect
dengan JAR drivernya sendiri, dan file custom_jdbc_config.yml
akan memiliki beberapa entri:
ls looker/custom_jdbc_drivers
driver_symbol_1 driver_symbol_2
ls looker/custom_jdbc_drivers/driver_symbol_1
Dialect1Driver.jar
- name: driver_symbol_1
dir_name: driver_symbol_1
module_path: com.dialect.jdbc.Dialect1Driver
- name: driver_symbol_2
dir_name: driver_symbol_2
module_path: com.dialect.jdbc.Dialect2Driver