Konektor Google Amazon Athena BigQuery - Amazon Athena

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Konektor Google Amazon Athena BigQuery

Konektor Amazon Athena untuk Google BigQuerymemungkinkan Amazon Athena SQL menjalankan kueri pada data Google Anda. BigQuery

Konektor ini dapat didaftarkan dengan Glue Data Catalog sebagai katalog federasi. Ini mendukung kontrol akses data yang didefinisikan dalam Lake Formation di katalog, database, tabel, kolom, baris, dan tingkat tag. Konektor ini menggunakan Glue Connections untuk memusatkan properti konfigurasi di Glue.

Prasyarat

Batasan

  • Fungsi Lambda memiliki nilai batas waktu maksimum 15 menit. Setiap perpecahan mengeksekusi kueri BigQuery dan harus selesai dengan waktu yang cukup untuk menyimpan hasil agar Athena dapat dibaca. Jika fungsi Lambda habis waktu, kueri gagal.

  • Google BigQuery sangat peka huruf besar/case sensitive. Konektor mencoba untuk memperbaiki kasus nama dataset, nama tabel, dan proyekIDs. Hal ini diperlukan karena Athena menurunkan kasus semua metadata. Koreksi ini membuat banyak panggilan tambahan ke Google BigQuery.

  • Tipe data biner tidak didukung.

  • Karena BigQuery konkurensi Google dan batas kuota, konektor mungkin mengalami masalah batas kuota Google. Untuk menghindari masalah ini, dorong sebanyak mungkin kendala ke Google BigQuery . Untuk informasi tentang BigQuery kuota, lihat Kuota dan batasan dalam dokumentasi Google BigQuery .

Parameter

Gunakan parameter di bagian ini untuk mengkonfigurasi BigQuery konektor Google.

catatan

Konektor sumber data Athena dibuat pada 3 Desember 2024 dan kemudian menggunakan koneksi. AWS Glue

Nama parameter dan definisi yang tercantum di bawah ini adalah untuk konektor sumber data Athena yang dibuat sebelum 3 Desember 2024. Ini dapat berbeda dari properti AWS Glue koneksi yang sesuai. Mulai 3 Desember 2024, gunakan parameter di bawah ini hanya jika Anda menggunakan konektor sumber data Athena versi sebelumnya secara manual.

  • spill_bucket - Menentukan bucket Amazon S3 untuk data yang melebihi batas fungsi Lambda.

  • spill_prefix — (Opsional) Default ke subfolder dalam nama yang ditentukan. spill_bucket athena-federation-spill Kami menyarankan Anda mengonfigurasi siklus hidup penyimpanan Amazon S3 di lokasi ini untuk menghapus tumpahan yang lebih lama dari jumlah hari atau jam yang telah ditentukan sebelumnya.

  • spill_put_request_headers — (Opsional) Peta header permintaan dan nilai yang JSON dikodekan untuk permintaan Amazon S3 yang digunakan untuk tumpahan (misalnya,). putObject {"x-amz-server-side-encryption" : "AES256"} Untuk kemungkinan header lainnya, lihat PutObjectdi APIReferensi Layanan Penyimpanan Sederhana Amazon.

  • kms_key_id — (Opsional) Secara default, data apa pun yang tumpah ke Amazon S3 dienkripsi menggunakan AES mode enkripsi yang diautentikasi dan kunci yang dihasilkan secara acak. GCM Agar fungsi Lambda Anda menggunakan kunci enkripsi yang lebih kuat yang dihasilkan oleh KMS likea7e63k4b-8loc-40db-a2a1-4d0en2cd8331, Anda dapat menentukan ID KMS kunci.

  • disable_spill_encryption — (Opsional) Ketika diatur ke, menonaktifkan enkripsi tumpahan. True Defaultnya False agar data yang tumpah ke S3 dienkripsi menggunakan AES - GCM — baik menggunakan kunci yang dihasilkan secara acak atau untuk menghasilkan kunci. KMS Menonaktifkan enkripsi tumpahan dapat meningkatkan kinerja, terutama jika lokasi tumpahan Anda menggunakan enkripsi sisi server.

  • gcp_project_id — ID proyek (bukan nama proyek) yang berisi kumpulan data yang harus dibaca konektor (misalnya,). semiotic-primer-1234567

  • secret_manager_gcp_creds_name — Nama rahasia di dalamnya yang berisi kredensil Anda dalam format (misalnya,). AWS Secrets Manager BigQuery JSON GoogleCloudPlatformCredentials

  • big_query_endpoint — (Opsional) Titik akhir pribadi. URL BigQuery Gunakan parameter ini saat Anda ingin mengakses BigQuery melalui titik akhir pribadi.

Perpecahan dan tampilan

Karena BigQuery konektor menggunakan tabel kueri BigQuery Storage Read API to, dan BigQuery Storage API tidak mendukung tampilan, konektor menggunakan BigQuery klien dengan satu split untuk tampilan.

Kinerja

Untuk menanyakan tabel, BigQuery konektor menggunakan BigQuery Storage ReadAPI, yang menggunakan protokol RPC berbasis yang menyediakan akses cepat ke penyimpanan BigQuery terkelola. Untuk informasi selengkapnya tentang Pembacaan BigQuery PenyimpananAPI, lihat Menggunakan Baca BigQuery Penyimpanan API untuk membaca data tabel di dokumentasi Google Cloud.

Memilih subset kolom secara signifikan mempercepat runtime kueri dan mengurangi data yang dipindai. Konektor tunduk pada kegagalan kueri saat konkurensi meningkat, dan umumnya merupakan konektor yang lambat.

BigQuery Konektor Google Athena melakukan pushdown predikat untuk mengurangi data yang dipindai oleh kueri. LIMITklausa, ORDER BY klausa, predikat sederhana, dan ekspresi kompleks didorong ke konektor untuk mengurangi jumlah data yang dipindai dan mengurangi waktu eksekusi kueri.

LIMITklausa

LIMIT NPernyataan mengurangi data yang dipindai oleh kueri. Dengan LIMIT N pushdown, konektor hanya mengembalikan N baris ke Athena.

Kueri N teratas

NKueri teratas menentukan urutan set hasil dan batas jumlah baris yang dikembalikan. Anda dapat menggunakan jenis kueri ini untuk menentukan nilai N maks teratas atau nilai N min teratas untuk kumpulan data Anda. Dengan N pushdown atas, konektor hanya mengembalikan baris yang N dipesan ke Athena.

Predikat

Predikat adalah ekspresi dalam WHERE klausa SQL kueri yang mengevaluasi nilai Boolean dan memfilter baris berdasarkan beberapa kondisi. BigQuery Konektor Google Athena dapat menggabungkan ekspresi ini dan mendorongnya langsung ke Google BigQuery untuk fungsionalitas yang ditingkatkan dan untuk mengurangi jumlah data yang dipindai.

Operator BigQuery konektor Google Athena berikut mendukung pushdown predikat:

  • Boolean:AND, ATAU, NOT

  • Kesetaraan:EQUAL, NOT _, _EQUAL, LESS _ LESS THAN _OR_THAN, _EQUAL, _ GREATER _ATAU_THAN, GREATER IS_ _, THAN _JIKAEQUAL, DISTINCT IS_ FROM NULL NULL

  • Aritmatika:ADD,,,,SUBTRACT, MULTIPLY DIVIDE MODULUS NEGATE

  • Lainnya: LIKE _PATTERN, IN

Contoh pushdown gabungan

Untuk kemampuan kueri yang ditingkatkan, gabungkan jenis pushdown, seperti pada contoh berikut:

SELECT * FROM my_table WHERE col_a > 10 AND ((col_a + col_b) > (col_c % col_d)) AND (col_e IN ('val1', 'val2', 'val3') OR col_f LIKE '%pattern%') ORDER BY col_a DESC LIMIT 10;

Kueri passthrough

BigQuery Konektor Google mendukung kueri passthrough. Kueri passthrough menggunakan fungsi tabel untuk mendorong kueri lengkap Anda ke sumber data untuk dieksekusi.

Untuk menggunakan kueri passthrough dengan Google BigQuery, Anda dapat menggunakan sintaks berikut:

SELECT * FROM TABLE( system.query( query => 'query string' ))

Contoh kueri berikut mendorong kueri ke sumber data di Google BigQuery. Kueri memilih semua kolom dalam customer tabel, membatasi hasilnya menjadi 10.

SELECT * FROM TABLE( system.query( query => 'SELECT * FROM customer LIMIT 10' ))

Informasi lisensi

Proyek BigQuery konektor Google Amazon Athena dilisensikan di bawah Lisensi Apache-2.0.

Dengan menggunakan konektor ini, Anda mengakui penyertaan komponen pihak ketiga, daftar yang dapat ditemukan dalam file pom.xml untuk konektor ini, dan menyetujui persyaratan dalam masing-masing lisensi pihak ketiga yang disediakan dalam LICENSEfile.txt di .com. GitHub

Sumber daya tambahan

Untuk informasi tambahan tentang konektor ini, kunjungi situs terkait GitHub di.com.