Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Gunakan kompresi di Athena
Athena mendukung berbagai format kompresi untuk membaca dan menulis data, termasuk membaca dari tabel yang menggunakan beberapa format kompresi. Misalnya, Athena berhasil membaca data dalam tabel yang menggunakan format file Parket ketika beberapa file Parket dikompresi dengan Snappy dan file Parket lainnya dikompresi. GZIP Prinsip yang sama berlaku untukORC, file teks, dan format JSON penyimpanan.
Athena mendukung format kompresi berikut:
-
BZIP2— Format yang menggunakan algoritma Burrows-Wheeler.
-
DEFLATE— Algoritma kompresi berdasarkan LZSS
dan pengkodean Huffman . Deflate hanya relevan untuk format file Avro. -
GZIP— Algoritma kompresi berdasarkan Deflate. Untuk tabel Hive di mesin Athena versi 2 dan 3, dan tabel Iceberg di mesin Athena versi GZIP 2, adalah format kompresi tulis default untuk file dalam format penyimpanan file Parket dan teks. File dalam
tar.gz
format tidak didukung. -
LZ4— Anggota keluarga Lempel-Ziv 77 (LZ7) ini juga berfokus pada kecepatan kompresi dan dekompresi daripada kompresi data maksimum. LZ4memiliki format pembingkaian berikut:
-
LZ4Raw/Unframed — Implementasi standar format kompresi blok yang tidak dibingkai. LZ4 Untuk informasi selengkapnya, lihat deskripsi format LZ4 blok
pada GitHub. -
LZ4framed — Implementasi pembingkaian yang biasa dari. LZ4 Untuk informasi selengkapnya, lihat deskripsi format LZ4 bingkai
di GitHub. -
LZ4Hadoop-compatible — Implementasi Apache Hadoop dari. LZ4 Implementasi ini membungkus LZ4 kompresi dengan BlockCompressorStreamkelas.java.
-
-
LZO— Format yang menggunakan algoritma Lempel—Ziv—Oberhumer, yang berfokus pada kompresi tinggi dan kecepatan dekompresi daripada kompresi maksimum data. LZOmemiliki dua implementasi:
-
Standar LZO — Untuk informasi lebih lanjut, lihat LZO abstrak
di situs web Oberhumer. -
LZOhadoop-compatible - Implementasi ini membungkus LZO algoritma dengan kelas.java. BlockCompressorStream
-
-
SNAPPY— Algoritma kompresi yang merupakan bagian dari keluarga Lempel-Ziv 77 (). LZ7 Snappy berfokus pada kecepatan kompresi dan dekompresi yang tinggi daripada kompresi maksimum data.
-
ZLIB— Berdasarkan Defrate, ZLIB adalah format kompresi tulis default untuk file dalam format penyimpanan ORC data. Untuk informasi lebih lanjut, lihat halaman zlib
di. GitHub -
ZSTD— Algoritma kompresi data real-time Zstandard adalah algoritma
kompresi cepat yang memberikan rasio kompresi tinggi. Pustaka Zstandard (ZSTD) disediakan sebagai perangkat lunak sumber terbuka menggunakan BSD lisensi. ZSTDadalah kompresi default untuk tabel Iceberg. Saat menulis data ZSTD terkompresi, Athena ZSTD menggunakan tingkat kompresi 3 secara default. Untuk informasi lebih lanjut tentang menggunakan tingkat ZSTD kompresi di Athena, lihat. Gunakan tingkat ZSTD kompresi
catatan
Athena tidak mendukung penulisan file Parket yang dikompresi dengan atau format. LZ4 LZO Pembacaan untuk format kompresi ini didukung.
Tentukan format kompresi
Saat Anda menulis CREATE TABLE atau CTAS pernyataan, Anda dapat menentukan properti kompresi yang menentukan jenis kompresi yang akan digunakan saat Athena menulis ke tabel tersebut.
-
UntukCTAS, lihatCTASproperti tabel. Sebagai contoh, lihat Contoh CTAS kueri.
-
Untuk CREATETABLE, lihat ALTER TABLE SET TBLPROPERTIES daftar properti tabel kompresi.
Tentukan tidak ada kompresi
CREATETABLEpernyataan mendukung penulisan file yang tidak terkompresi. Untuk menulis file yang tidak terkompresi, gunakan sintaks berikut:
-
CREATETABLE(file teks atauJSON) - Dalam
TBLPROPERTIES
, tentukanwrite.compression = NONE
. -
CREATETABLE(Parket) — Dalam
TBLPROPERTIES
, tentukanparquet.compression = UNCOMPRESSED
. -
CREATETABLE(ORC) — Dalam
TBLPROPERTIES
, tentukanorc.compress = NONE
.
Catatan dan sumber daya
-
Saat ini, ekstensi file huruf besar seperti
.GZ
atau tidak dikenali.BZIP2
oleh Athena. Hindari menggunakan kumpulan data dengan ekstensi file huruf besar, atau ganti nama ekstensi file data menjadi huruf kecil. -
Untuk data diCSV,TSV, danJSON, Athena menentukan jenis kompresi dari ekstensi file. Jika tidak ada ekstensi file, Athena memperlakukan data sebagai teks biasa yang tidak terkompresi. Jika data Anda dikompresi, pastikan nama file menyertakan ekstensi kompresi, seperti
gz
. -
Format ZIP file tidak didukung.
-
Untuk menanyakan log Amazon Data Firehose dari Athena, format yang didukung GZIP mencakup kompresi atau file dengan kompresiORC. SNAPPY
-
Untuk informasi selengkapnya tentang penggunaan kompresi, lihat bagian 3 (“Kompres dan pisahkan file”) AWS Posting Blog Big Data 10 kiat penyetelan kinerja terbaik untuk Amazon Athena
.