Looker mendukung koneksi ke Amazon Athena, layanan kueri interaktif yang memudahkan analisis data di Amazon S3 menggunakan SQL standar. Amazon Athena adalah platform serverless, sehingga tidak ada infrastruktur yang perlu dikelola. Anda hanya dikenai biaya untuk kueri yang dijalankan.
Mengenkripsi lalu lintas 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.
Mengonfigurasi koneksi Amazon Athena
Halaman ini menjelaskan cara menghubungkan Looker ke instance Amazon Athena.
Pastikan Anda memiliki hal berikut:
- Sepasang kunci akses Amazon AWS.
Bucket S3 yang berisi data yang ingin Anda kueri di Looker dengan Amazon Athena. Kunci akses Amazon AWS harus memiliki akses baca-tulis ke bucket ini.
Amazon Athena harus memiliki akses ke bucket S3 ini berdasarkan peran atau kumpulan izin, serta aturan firewall. Jangan tambahkan aturan keamanan ke bucket S3 untuk IP Looker, karena hal ini dapat secara tidak sengaja memblokir akses Amazon Athena ke bucket S3. (Untuk dialek lain selain Amazon Athena, pengguna mungkin ingin membatasi akses ke data dari lapisan jaringan dengan daftar IP yang diizinkan, seperti yang dijelaskan di halaman dokumentasi Mengaktifkan akses database aman.)
Mengetahui lokasi data instance Amazon Athena. Nama region dapat ditemukan di bagian kanan atas Amazon Console.
Di bagian Admin Looker, pilih Connections, lalu klik Add Connection.
Isi detail koneksi:
- Name: Menentukan nama koneksi. Beginilah cara Anda merujuk koneksi dalam project LookML.
- Dialek: Pilih Amazon Athena.
- Host dan Port: Tentukan nama host dan port seperti yang dijelaskan dalam dokumentasi Athena tentang format URL JDBC. Host harus berupa endpoint Amazon yang valid (seperti
athena.eu-west-1.amazonaws.com
), dan port harus tetap di443
. Daftar endpoint terbaru yang mendukung Athena dapat ditemukan di halaman Referensi Umum AWS ini. - Database: Tentukan database default yang ingin Anda buat modelnya. Database lain dapat diakses, tetapi Looker memperlakukan database ini sebagai database default.
- Username: Tentukan ID kunci akses AWS.
- Password: Tentukan kunci akses rahasia AWS.
- Aktifkan PDT: Gunakan tombol ini untuk mengaktifkan tabel turunan persisten (PDT). Jika PDT diaktifkan, kolom PDT tambahan dan bagian Penggantian PDT akan ditampilkan untuk koneksi.
- Database Temp: Tentukan nama direktori output di bucket S3 tempat Anda ingin Looker menulis PDT. Jalur lengkap ke direktori output Anda harus ditentukan di kolom Parameter JDBC tambahan; lihat bagian Menentukan bucket S3 Anda untuk output hasil kueri dan PDT di halaman ini.
- 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 Anda.
- Parameter JDBC tambahan: Tentukan parameter tambahan untuk koneksi:
- Parameter
s3_staging_dir
adalah bucket S3 yang harus digunakan Looker untuk output hasil kueri dan PDT; lihat bagian Menentukan bucket S3 Anda untuk output hasil kueri dan PDT di halaman ini. - Laporkan hasil streaming. Jika Anda memiliki kebijakan
athena:GetQueryResultsStream
yang disertakan pada pengguna Athena, Anda dapat menambahkan;UseResultsetStreaming=1
ke akhir parameter JDBC tambahan untuk meningkatkan performa ekstraksi kumpulan hasil besar secara signifikan. Parameter ini disetel ke0
secara default. - Parameter tambahan opsional yang akan ditambahkan ke string koneksi JDBC.
- Parameter
- SSL: Abaikan; secara default, semua koneksi ke AWS API akan dienkripsi.
- Koneksi maksimum per node: Secara default, nilai ini ditetapkan ke 5. Anda dapat meningkatkannya hingga 20 jika Looker adalah mesin kueri utama yang berjalan terhadap Athena. Lihat dokumentasi batas layanan Athena untuk detail selengkapnya tentang batas layanan. Lihat halaman dokumentasi Menghubungkan Looker ke database untuk mengetahui informasi selengkapnya.
- Connection Pool Timeout: Menentukan waktu tunggu kumpulan koneksi. Secara default, waktu tunggu disetel ke 120 detik. Lihat halaman dokumentasi Menghubungkan Looker ke database untuk mengetahui informasi selengkapnya.
- Precache SQL Runner: Batalkan pilihan opsi ini jika Anda lebih memilih SQL Runner untuk memuat informasi tabel hanya saat tabel dipilih. Lihat halaman dokumentasi Menghubungkan Looker ke database untuk mengetahui informasi selengkapnya.
- Zona Waktu Database: Menentukan zona waktu yang digunakan di database. Kosongkan kolom ini jika Anda tidak ingin melakukan konversi zona waktu. Lihat halaman dokumentasi Menggunakan setelan zona waktu untuk informasi selengkapnya.
Untuk memverifikasi bahwa koneksi berhasil, klik Test. Lihat halaman dokumentasi Menguji konektivitas database untuk informasi pemecahan masalah.
Untuk menyimpan setelan ini, klik Hubungkan.
Menentukan bucket S3 untuk output hasil kueri dan PDT
Gunakan kolom Parameter JDBC tambahan di halaman Koneksi untuk mengonfigurasi jalur ke bucket S3 yang akan digunakan Looker untuk menyimpan output hasil kueri, dan untuk menentukan nama direktori output di bucket S3 tempat Anda ingin Looker menulis PDT. Tentukan informasi ini menggunakan parameter s3_staging_dir
.
Parameter JDBC s3_staging_dir
adalah cara alternatif untuk mengonfigurasi properti S3OutputLocation
Amazon Athena, yang diperlukan untuk koneksi JDBC Athena. Lihat dokumentasi Athena di Opsi Driver JDBC untuk informasi selengkapnya dan daftar semua opsi driver JDBC yang tersedia.
Di kolom Parameter JDBC tambahan, tentukan parameter s3_staging_dir
menggunakan format berikut:
`s3_staging_dir=s3://<s3-bucket>/<output-path>`
Dengan keterangan:
<s3-bucket>
adalah nama bucket S3.<output-path>
adalah jalur tempat Looker akan menulis output hasil kueri.
Pasangan kunci akses AWS harus memiliki izin tulis ke direktori
<s3-bucket>
.
Untuk mengonfigurasi direktori tempat Looker akan menulis PDT, masukkan jalur direktori di bucket S3 di atas di kolom Temp Database.
Misalnya, jika Anda ingin Looker menulis PDT ke s3://<s3-bucket>/looker_scratch
, masukkan ini di kolom Temp Database:
`looker_scratch`
Hanya masukkan jalur direktori. Looker mendapatkan nama bucket S3 dari parameter s3_staging_dir
yang Anda masukkan di kolom Additional JDBC Parameters.
Pertimbangan bucket S3
Sebaiknya konfigurasikan siklus proses objek Amazon S3 untuk secara berkala menghapus file yang tidak diperlukan di bucket S3 yang ditentukan. Ada alasannya:
- Athena menyimpan hasil kueri untuk setiap kueri di bucket S3. Lihat Athena Querying.
- Jika Anda mengaktifkan PDT, saat PDT dibuat, metadata tentang tabel yang dibuat akan disimpan di bucket S3.
Referensi
- Dokumentasi Amazon Athena
- Amazon Web Services Console untuk Athena (memerlukan login AWS)
- Referensi Amazon Athena SQL dan HiveQL
Proses Debug
Amazon menyediakan opsi driver JDBC LogLevel
dan LogPath
untuk men-debug koneksi. Untuk menggunakannya, tambahkan ;LogLevel=DEBUG;LogPath=/tmp/athena_debug.log
ke akhir kolom Parameter JDBC Tambahan dan uji koneksinya lagi.
Jika Looker menghosting instance, maka Dukungan Looker atau analis Anda perlu mengambil file ini untuk melanjutkan proses debug.
Dukungan fitur
Agar Looker dapat mendukung beberapa fitur, dialek database Anda juga harus mendukung fitur tersebut.
Amazon Athena mendukung fitur berikut mulai Looker 24.6:
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 | Tidak |
Parameter Tambahan JDBC | Ya |
Peka Huruf Besar/Kecil | Ya |
Jenis Lokasi | Ya |
Jenis Daftar | Ya |
Persentil | Ya |
Persentil berbeda | Tidak |
Proses Tampilan Runner SQL | Tidak |
Tabel Deskripsi Runner SQL | Ya |
Indeks Tampilan Runner SQL | Tidak |
Pilihan Runner SQL 10 | Ya |
Jumlah Runner SQL | Ya |
Penjelasan SQL | Tidak |
Kredensial OAuth | Tidak |
Komentar Konteks | Ya |
Penggabungan Koneksi | Tidak |
Sketsa HLL | Ya |
Awareness Gabungan | Ya |
PDT inkremental | Tidak |
Milidetik | Ya |
Mikrodetik | Tidak |
Tampilan Terwujud | Tidak |
Perkiraan Jumlah Berbeda | Ya |
Langkah berikutnya
Setelah Anda menyelesaikan koneksi database, konfigurasi opsi autentikasi.