Menggunakan kembali hasil kueri - Amazon Athena

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

Menggunakan kembali hasil kueri

Saat Anda menjalankan ulang kueri di Athena, Anda dapat memilih untuk menggunakan kembali hasil kueri terakhir yang disimpan. Opsi ini dapat meningkatkan kinerja dan mengurangi biaya dalam hal jumlah byte yang dipindai. Menggunakan kembali hasil kueri berguna jika, misalnya, Anda tahu bahwa hasilnya tidak akan berubah dalam jangka waktu tertentu. Anda dapat menentukan usia maksimum untuk menggunakan kembali hasil kueri. Athena menggunakan hasil yang disimpan selama tidak lebih tua dari usia yang Anda tentukan. Untuk informasi selengkapnya, lihat Mengurangi biaya dan meningkatkan kinerja kueri dengan Amazon Athena di Blog AWS Big Data.

catatan

Fitur penggunaan kembali hasil kueri memerlukan mesin Athena versi 3. Untuk informasi tentang mengubah versi mesin, lihatMengubah versi mesin Athena.

Fitur utama

  • Menggunakan kembali hasil kueri adalah fitur keikutsertaan per kueri. Anda dapat mengaktifkan penggunaan kembali hasil kueri berdasarkan per kueri.

  • Usia maksimum untuk menggunakan kembali hasil kueri dapat ditentukan dalam hitungan menit, jam, atau hari. Usia maksimum yang ditentukan adalah setara dengan 7 hari terlepas dari satuan waktu yang digunakan. Default-nya adalah 60 menit.

  • Saat Anda mengaktifkan penggunaan kembali hasil untuk kueri, Athena mencari eksekusi kueri sebelumnya dalam grup kerja yang sama. Jika Athena menemukan hasil kueri tersimpan yang sesuai, itu tidak menjalankan kembali kueri, tetapi menunjuk ke lokasi hasil sebelumnya atau mengambil data darinya.

  • Untuk kueri apa pun yang memungkinkan opsi penggunaan kembali hasil, Athena menggunakan kembali hasil kueri terakhir yang disimpan ke folder workgroup hanya jika semua kondisi berikut benar:

    • String kueri adalah sama persis.

    • Database dan nama katalog cocok.

    • Hasil sebelumnya tidak lebih dari usia maksimum yang ditentukan, atau tidak lebih dari 60 menit jika usia maksimum belum ditentukan.

    • Athena hanya menggunakan kembali eksekusi yang memiliki konfigurasi hasil yang sama persis dengan eksekusi saat ini.

    • Anda memiliki akses ke semua tabel yang direferensikan dalam kueri.

    • Anda memiliki akses ke lokasi file S3 tempat hasil sebelumnya disimpan.

Jika salah satu kondisi ini tidak terpenuhi, Athena menjalankan kueri tanpa menggunakan hasil cache.

Pertimbangan dan batasan

Saat menggunakan fitur penggunaan kembali hasil kueri, ingatlah hal-hal berikut:

  • Athena menggunakan kembali hasil kueri hanya dalam kelompok kerja yang sama.

  • Fitur hasil kueri penggunaan kembali menghormati konfigurasi workgroup. Jika Anda mengganti konfigurasi hasil untuk kueri, fitur tersebut dinonaktifkan.

  • Apache Hive, Apache Hudi, Apache Iceberg, dan Linux Foundation Delta Lake tabel terdaftar dengan didukung. AWS Glue Metastor Sarang Eksternal tidak didukung.

  • Kueri yang mereferensikan katalog federasi atau metastore Hive eksternal tidak didukung.

  • Penggunaan kembali hasil kueri tidak didukung untuk tabel yang diatur Lake Formation.

  • Penggunaan kembali hasil kueri tidak didukung saat lokasi Amazon S3 dari sumber tabel terdaftar sebagai lokasi data di Lake Formation.

  • Tabel dengan izin baris dan kolom tidak didukung.

  • Tabel yang memiliki kontrol akses berbutir halus (misalnya, pemfilteran kolom atau baris) tidak didukung.

  • Setiap kueri yang mereferensikan tabel yang tidak didukung tidak memenuhi syarat untuk digunakan kembali hasil kueri.

  • Athena mengharuskan Anda memiliki izin baca Amazon S3 untuk file keluaran yang dihasilkan sebelumnya untuk digunakan kembali.

  • Fitur hasil kueri penggunaan kembali mengasumsikan bahwa konten hasil sebelumnya belum dimodifikasi. Athena tidak memeriksa integritas hasil sebelumnya sebelum menggunakannya.

  • Jika hasil kueri dari eksekusi sebelumnya telah dihapus atau dipindahkan ke lokasi yang berbeda di Amazon S3, eksekusi kueri yang sama berikutnya tidak akan menggunakan kembali hasil kueri.

  • Hasil yang berpotensi basi dapat dikembalikan. Athena tidak memeriksa perubahan data sumber hingga usia penggunaan ulang maksimum yang Anda tentukan telah tercapai.

  • Jika beberapa hasil tersedia untuk digunakan kembali, Athena menggunakan hasil terbaru.

  • Kueri yang menggunakan operator non-deterministik atau fungsi seperti rand() atau shuffle() tidak menggunakan hasil cache. Misalnya, LIMIT tanpa ORDER BY non-deterministik dan tidak di-cache, tetapi LIMIT dengan deterministik dan ORDER BY di-cache.

  • Penggunaan kembali hasil kueri didukung di konsol Athena, di Athena API, dan di driver JDBC. Saat ini, dukungan driver ODBC untuk penggunaan kembali hasil kueri hanya tersedia untuk Windows.

  • Untuk menggunakan fitur penggunaan kembali hasil kueri dengan JDBC, versi driver minimum yang diperlukan adalah 2.0.34.1000. Untuk ODBC, versi driver minimum yang diperlukan adalah 1.1.19.1002. Untuk informasi unduhan driver, lihatMenghubungkan ke Amazon Athena dengan driver ODBC dan JDBC.

  • Penggunaan kembali hasil kueri tidak didukung untuk kueri yang menggunakan lebih dari satu katalog data.

  • Penggunaan kembali hasil kueri tidak didukung untuk kueri yang menyertakan lebih dari 20 tabel.

Menggunakan kembali hasil kueri di konsol Athena

Untuk menggunakan fitur ini, aktifkan opsi Gunakan kembali hasil kueri di editor kueri Athena.

Aktifkan Hasil kueri Gunakan kembali di editor kueri Athena.
Untuk mengonfigurasi fitur hasil kueri penggunaan kembali
  1. Di editor kueri Athena, di bawah opsi Gunakan kembali hasil kueri, pilih ikon edit di samping hingga 60 menit yang lalu.

  2. Dalam kotak dialog Edit waktu penggunaan kembali, dari kotak di sebelah kanan, pilih unit waktu (menit, jam, atau hari).

  3. Di kotak di sebelah kiri, masukkan atau pilih jumlah satuan waktu yang ingin Anda tentukan. Waktu maksimum yang dapat Anda masukkan setara dengan tujuh hari terlepas dari unit waktu yang dipilih.

    Mengkonfigurasi usia maksimum untuk menggunakan kembali hasil kueri.

    Contoh berikut menentukan waktu penggunaan kembali maksimum dua hari.

    Penggunaan kembali hasil kueri dikonfigurasi selama maksimal dua hari.
  4. Pilih Konfirmasi.

    Spanduk mengonfirmasi perubahan konfigurasi Anda, dan opsi Reuse query results menampilkan pengaturan baru Anda.

    Pengaturan hasil kueri penggunaan kembali baru di editor kueri Athena.