Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
File data untuk kueri di Amazon Redshift Spectrum
Bagian ini menjelaskan cara membuat file data di Amazon S3 dalam format yang didukung Redshift Spectrum.
File data yang Anda gunakan untuk kueri di Amazon Redshift Spectrum umumnya jenis file yang sama yang Anda gunakan untuk aplikasi lain. Misalnya, jenis file yang sama digunakan dengan Amazon Athena, Amazon EMR, dan. QuickSight Anda dapat menanyakan data dalam format aslinya langsung dari Amazon S3. Untuk melakukan ini, file data harus dalam format yang didukung Redshift Spectrum dan ditempatkan di bucket Amazon S3 yang dapat diakses kluster Anda.
Bucket Amazon S3 dengan file data dan cluster Amazon Redshift harus berada di Wilayah yang sama. AWS Untuk informasi tentang AWS Wilayah yang didukung, lihatWilayah Spektrum Pergeseran Merah Amazon.
Format data untuk Redshift Spectrum
Redshift Spectrum mendukung format data terstruktur dan semi-terstruktur berikut.
Format file | Kolumnar | Mendukung pembacaan paralel | Satuan terpisah |
---|---|---|---|
Parquet | Ya | Ya | Grup baris |
ORC | Ya | Ya | Stripe |
RCFile | Ya | Ya | Grup baris |
TextFile | Tidak | Ya | Baris |
SequenceFile | Tidak | Ya | Baris atau blok |
RegexSerde | Tidak | Ya | Baris |
OpenCSV | Tidak | Ya | Baris |
AVRO | Tidak | Ya | Blokir |
Ion | Tidak | Tidak | N/A |
JSON | Tidak | Tidak | N/A |
Pada tabel sebelumnya, judul menunjukkan yang berikut:
-
Columnar — Apakah format file secara fisik menyimpan data dalam struktur berorientasi kolom sebagai lawan dari yang berorientasi baris.
-
Mendukung pembacaan paralel - Apakah format file mendukung membaca blok individu dalam file. Membaca blok individual memungkinkan pemrosesan terdistribusi file di beberapa permintaan Redshift Spectrum independen alih-alih harus membaca file lengkap dalam satu permintaan.
-
Split unit — Untuk format file yang dapat dibaca secara paralel, unit split adalah potongan data terkecil yang dapat diproses oleh satu permintaan Redshift Spectrum.
catatan
Nilai stempel waktu dalam file teks harus dalam formatyyyy-MM-dd HH:mm:ss.SSSSSS
, seperti yang ditunjukkan oleh nilai stempel waktu berikut:. 2017-05-01 11:30:59.000000
Sebaiknya gunakan format file penyimpanan kolumnar, seperti Apache Parquet. Amazon Redshift mendukung format file data Apache Parquet v1. Dengan format file penyimpanan kolumnar, Anda dapat meminimalkan transfer data dari Amazon S3 dengan memilih hanya kolom yang Anda butuhkan.
Jenis kompresi untuk Redshift Spectrum
Untuk mengurangi ruang penyimpanan, meningkatkan kinerja, dan meminimalkan biaya, kami sangat menyarankan Anda untuk mengompres file data Anda. Redshift Spectrum mengenali jenis kompresi file berdasarkan ekstensi file.
Redshift Spectrum mendukung jenis dan ekstensi kompresi berikut.
Algoritma Kompresi | Ekstensi File | Mendukung Bacaan Paralel |
---|---|---|
Gzip | .gz | Tidak |
Bzip2 | .bz2 | Ya |
Tajam | .tajam | Tidak |
Anda dapat menerapkan kompresi pada level yang berbeda. Paling umum, Anda mengompres seluruh file atau mengompres blok individual dalam file. Mengompresi format kolumnar pada tingkat file tidak menghasilkan manfaat kinerja.
Agar Redshift Spectrum dapat membaca file secara paralel, berikut ini harus benar:
-
Format file mendukung pembacaan paralel.
-
Kompresi tingkat file, jika ada, mendukung pembacaan paralel.
Tidak masalah apakah unit split individu dalam file dikompresi menggunakan algoritma kompresi yang dapat dibaca secara paralel, karena setiap unit split diproses oleh permintaan Redshift Spectrum tunggal. Contoh dari ini adalah file Parket terkompresi Snappy-. Grup baris individu dalam file Parket dikompresi menggunakan Snappy, tetapi struktur tingkat atas file tetap tidak terkompresi. Dalam hal ini, file dapat dibaca secara paralel karena setiap permintaan Redshift Spectrum dapat membaca dan memproses grup baris individual dari Amazon S3.
Enkripsi untuk Redshift Spectrum
Redshift Spectrum secara transparan mendekripsi file data yang dienkripsi menggunakan opsi enkripsi berikut:
-
Enkripsi sisi server (SSE-S3) menggunakan kunci enkripsi AES-256 yang dikelola oleh Amazon S3.
-
Enkripsi sisi server dengan kunci yang dikelola oleh AWS Key Management Service (SSE-KMS).
Redshift Spectrum tidak mendukung enkripsi sisi klien Amazon S3. Untuk informasi selengkapnya tentang enkripsi sisi server, lihat Melindungi Data Menggunakan Enkripsi Sisi Server di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon.
Amazon Redshift menggunakan massively parallel processing (MPP) untuk mencapai eksekusi cepat dari kueri kompleks yang beroperasi pada sejumlah besar data. Redshift Spectrum memperluas prinsip yang sama untuk menanyakan data eksternal, menggunakan beberapa instance Redshift Spectrum sesuai kebutuhan untuk memindai file. Tempatkan file dalam folder terpisah untuk setiap tabel.
Anda dapat mengoptimalkan data Anda untuk pemrosesan paralel dengan melakukan hal berikut:
-
Jika format atau kompresi file Anda tidak mendukung pembacaan secara paralel, pecahkan file besar menjadi banyak file yang lebih kecil. Sebaiknya gunakan ukuran file antara 64 MB dan 1 GB.
-
Simpan semua file dengan ukuran yang sama. Jika beberapa file jauh lebih besar dari yang lain, Redshift Spectrum tidak dapat mendistribusikan beban kerja secara merata.