Sarang Ion Amazon SerDe - Amazon Athena

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

Sarang Ion Amazon SerDe

Anda dapat menggunakan Amazon Ion Hive SerDe untuk menanyakan data yang disimpan dalam format Amazon Ion. Amazon Ion adalah format data sumber terbuka yang diketik dengan kaya, menggambarkan diri sendiri. Format Amazon Ion digunakan oleh layanan seperti Amazon Quantum Ledger Database (AmazonQLDB) dan dalam bahasa SQL kueri open source PartiQL.

Amazon Ion memiliki format biner dan teks yang dapat dipertukarkan. Fitur ini menggabungkan kemudahan penggunaan teks dengan efisiensi pengkodean biner.

Untuk menanyakan data Amazon Ion dari Athena, Anda dapat menggunakan Amazon Ion Hive SerDe, yang membuat serial dan deserialisasi data Amazon Ion. Deserialisasi memungkinkan Anda untuk menjalankan kueri pada data Amazon Ion atau membacanya untuk menulis ke dalam format yang berbeda seperti Parket atau. ORC Serialisasi memungkinkan Anda menghasilkan data dalam format Amazon Ion dengan menggunakan CREATE TABLE AS SELECT (CTAS) atau INSERT INTO kueri untuk menyalin data dari tabel yang ada.

catatan

Karena Amazon Ion adalah superset dariJSON, Anda dapat menggunakan Amazon Ion Hive SerDe untuk menanyakan kumpulan data non-Amazon Ion. JSON Tidak seperti JSON SerDeperpustakaan lain, Amazon Ion SerDe tidak mengharapkan setiap baris data berada pada satu baris. Fitur ini berguna jika Anda ingin menanyakan JSON kumpulan data yang dalam format “cetak cantik” atau memecah bidang berturut-turut dengan karakter baris baru.

Untuk informasi tambahan dan contoh kueri Amazon Ion dengan Athena, lihat Menganalisis kumpulan data Amazon Ion menggunakan Amazon Athena.

Nama pustaka serialisasi

Nama pustaka serialisasi untuk Amazon Ion SerDe adalahcom.amazon.ionhiveserde.IonHiveSerDe. Untuk informasi kode sumber, lihat Amazon Ion Hive SerDe GitHub di.com.

Pertimbangan dan batasan

  • Bidang duplikat - Struct Amazon Ion diurutkan dan mendukung bidang duplikat, sedangkan Hive dan tidakSTRUCT<>. MAP<> Jadi, ketika Anda deserialisasi bidang duplikat dari struct Amazon Ion, satu nilai dipilih secara non deterministik, dan yang lainnya diabaikan.

  • Tabel simbol eksternal tidak didukung — Saat ini, Athena tidak mendukung tabel simbol eksternal atau properti Amazon Ion SerDe Hive berikut:

    • ion.catalog.class

    • ion.catalog.file

    • ion.catalog.url

    • ion.symbol_table_imports

  • Ekstensi file - Amazon Ion menggunakan ekstensi file untuk menentukan codec kompresi mana yang akan digunakan untuk deserialisasi file Amazon Ion. Dengan demikian, file terkompresi harus memiliki ekstensi file yang sesuai dengan algoritma kompresi yang digunakan. Misalnya, jika ZSTD digunakan, file yang sesuai harus memiliki ekstensi.zst.

  • Data homogen — Amazon Ion tidak memiliki batasan pada tipe data yang dapat digunakan untuk nilai di bidang tertentu. Misalnya, dua dokumen Amazon Ion yang berbeda mungkin memiliki bidang dengan nama yang sama yang memiliki tipe data berbeda. Namun, karena Hive menggunakan skema, semua nilai yang Anda ekstrak ke kolom Hive tunggal harus memiliki tipe data yang sama.

  • Pembatasan jenis kunci peta — Saat Anda membuat serial data dari format lain ke Amazon Ion, pastikan bahwa jenis kunci peta adalah salah satu dariSTRING,VARCHAR, atauCHAR. Meskipun Hive memungkinkan Anda untuk menggunakan tipe data primitif apa pun sebagai kunci peta, simbol Amazon Ion harus berupa tipe string.

  • Jenis serikat - Athena saat ini tidak mendukung jenis serikat Hive.

  • Tipe data ganda — Amazon Ion saat ini tidak mendukung tipe double data.