Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bekerja dengan tabel Apache Iceberg dengan menggunakan Amazon Athena SQL
Amazon Athena menyediakan dukungan bawaan untuk Apache Iceberg, dan tidak memerlukan langkah atau konfigurasi tambahan. Bagian ini memberikan gambaran rinci tentang fitur yang didukung dan panduan tingkat tinggi untuk menggunakan Athena untuk berinteraksi dengan tabel Iceberg.
Versi dan kompatibilitas fitur
Dukungan spesifikasi tabel gunung es
Spesifikasi tabel Apache Iceberg menentukan bagaimana tabel Iceberg harus berperilaku. Athena mendukung format tabel versi 2, jadi tabel Iceberg apa pun yang Anda buat dengan konsol, CLI, atau SDK secara inheren menggunakan versi itu.
Jika Anda menggunakan tabel Iceberg yang dibuat dengan mesin lain, seperti Apache Spark di Amazon EMR AWS Glue atau, pastikan untuk mengatur versi format tabel dengan menggunakan properti tabel.
Dukungan fitur Iceberg
Anda dapat menggunakan Athena untuk membaca dan menulis ke tabel Iceberg. Saat Anda mengubah data dengan menggunakanUPDATE
,MERGE INTO
, dan DELETE FROM
pernyataan, Athena hanya mendukung merge-on-read mode. Properti ini tidak dapat diubah. Untuk memperbarui atau menghapus data dengan copy-on-write, Anda harus menggunakan mesin lain seperti Apache Spark di Amazon EMR atau. AWS Glue Tabel berikut merangkum dukungan fitur Iceberg di Athena.
Dukungan DDL | Dukungan DML | AWS Lake Formation untuk keamanan (opsional) | ||||
---|---|---|---|---|---|---|
Format tabel | Membuat tabel | Evolusi skema | Membaca data | Menulis data | Kontrol akses baris/kolom | |
Amazon Athena | Versi 2 | ✓ | ✓ | ✓ | X X opy-on-write | ✓ |
✓ M erge-on-read | ✓ |
catatan
-
Athena tidak mendukung kueri tambahan.
-
Di Athena, perbarui, hapus, dan gabungkan operasi selalu default untuk digabungkan saat baca (MoR), terlepas dari pengaturan copy on write (CoW) di properti tabel, karena CoW tidak didukung.
Bekerja dengan tabel Iceberg
Untuk memulai dengan cepat menggunakan Iceberg di Athena, lihat bagian Memulai dengan tabel Iceberg di Athena SQL sebelumnya dalam panduan ini.
Tabel berikut mencantumkan batasan dan rekomendasi.
Skenario |
Batasan |
Rekomendasi |
---|---|---|
Tabel generasi DDL |
Tabel gunung es yang dibuat dengan mesin lain dapat memiliki properti yang tidak terpapar di Athena. Untuk tabel ini, tidak mungkin untuk menghasilkan DDL. |
Gunakan pernyataan yang setara di mesin yang membuat tabel (misalnya, |
Awalan Amazon S3 acak dalam objek yang ditulis ke tabel Gunung Es |
Secara default, tabel Iceberg yang dibuat dengan Athena mengaktifkan properti. |
Untuk menonaktifkan perilaku ini dan mendapatkan kontrol penuh atas properti tabel Iceberg, buat tabel Iceberg dengan mesin lain seperti Spark di Amazon EMR atau. AWS Glue |
Kueri tambahan |
Saat ini tidak didukung di Athena. |
Untuk menggunakan kueri inkremental untuk mengaktifkan pipeline konsumsi data tambahan, gunakan Spark di Amazon EMR atau. AWS Glue |