Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Cara kerja pengiriman Amazon S3
Gunakan topik ini untuk mempelajari cara pengiriman Amazon S3 mengirimkan catatan dari aliran Amazon Kinesis Data Streams ke bucket Amazon Simple Storage Service tujuan umum, termasuk konfigurasi penyimpanan, kompresi, kelas penyimpanan, format rekaman, dan enkripsi.
Cara kerja pengiriman
Pengiriman Amazon S3 mengirimkan catatan ke bucket Amazon S3 tujuan umum dengan langkah-langkah berikut:
-
Baca — pengiriman membaca catatan dari semua pecahan di aliran Kinesis Data Streams.
-
Buffer — rekaman di-buffer sampai interval kesegaran data tercapai.
-
Validasi - ketika format rekaman adalah
STRING, setiap catatan divalidasi sebagai UTF-8 string yang valid; ketika format rekaman adalahJSON, setiap catatan divalidasi sebagai payload JSON yang valid. Catatan yang gagal validasi dikirim ke antrean huruf mati. -
Kompres dan format - catatan diformat sesuai dengan format output yang dikonfigurasi dan dikompresi menggunakan algoritma kompresi yang ditentukan.
-
Men girim — objek yang dihasilkan ditulis ke bucket Amazon S3 tujuan menggunakan template kunci yang dikonfigurasi.
-
Dead-letter antrean — catatan yang gagal validasi ditulis ke antrian huruf mati dengan konteks kesalahan.
Konfigurasi penyimpanan
Saat membuat pengiriman Amazon S3, Anda menentukan konfigurasi penyimpanan berikut:
-
BuckeTarn — ARN dari bucket Amazon S3 tujuan.
-
ExpectedBucketOwner— Akun AWS ID 12 digit dari pemilik bucket tujuan yang diharapkan. Nilai ini diperlukan dan membantu mencegah pengiriman ke bucket yang tidak diinginkan jika kepemilikan berubah.
-
CompressionType— jenis kompresi diterapkan pada objek yang dikirim. Nilai ini diperlukan; tentukan
NONEuntuk mengirimkan objek tanpa kompresi. Lihat Opsi kompresi. -
StorageClass— kelas penyimpanan Amazon S3 untuk objek yang dikirim (opsional). Lihat Kelas penyimpanan.
-
OutputKeyTemplate— template yang digunakan untuk membangun kunci objek Amazon S3 (opsional). Lihat Template kunci keluaran S3 untuk pengiriman Amazon S3.
Opsi kompresi
Anda harus menentukan jenis kompresi untuk pengiriman ke bucket Amazon S3 tujuan umum. Untuk mengirimkan objek tanpa kompresi, pilihNONE. Pilih salah satu jenis kompresi berikut:
-
GZIP — kompresi gzip standar. Keseimbangan rasio kompresi dan kecepatan yang baik.
-
ZSTD - kompresi Zstandar. Rasio kompresi yang lebih tinggi dengan dekompresi yang lebih cepat.
-
TIDAK ADA - tidak ada kompresi yang diterapkan. Catatan dikirim tanpa kompresi.
Kelas penyimpanan
Anda dapat secara opsional menentukan kelas penyimpanan Amazon S3 untuk objek yang dikirimkan. Jika tidak ditentukan, kelas penyimpanan default adalah STANDARD. Kelas penyimpanan yang didukung:
-
STANDAR — penyimpanan tujuan umum untuk data yang sering diakses.
-
INTELLIGENT_TIERING — secara otomatis memindahkan data antar tingkatan akses berdasarkan pola penggunaan.
-
GLACIER_IR — penyimpanan berbiaya rendah untuk data yang membutuhkan pengambilan segera.
Untuk informasi selengkapnya tentang kelas penyimpanan Amazon S3, lihat Mem ahami dan mengelola kelas penyimpanan di Panduan Pengguna Amazon S3.
Templat kunci output
Anda dapat mengonfigurasi template kunci keluaran untuk mengontrol struktur kunci objek Amazon S3 untuk file yang dikirimkan. Template mendukung placeholder dinamis untuk tanggal, waktu, dan metadata pengiriman untuk mengatur data Anda di bucket tujuan. Untuk template default, variabel yang didukung, dan contoh, lihatTemplate kunci keluaran S3 untuk pengiriman Amazon S3.
Kesegaran data
Kesegaran data mendefinisikan waktu buffering maksimum sebelum catatan dikirimkan. Anda dapat mengonfigurasi nilai ini antara 300 dan 900 detik (5 hingga 15 menit). Waktu default adalah 300 detik. Nilai yang lebih rendah memberikan pengiriman yang lebih cepat, sementara nilai yang lebih tinggi menghasilkan objek yang lebih sedikit dan lebih besar.
Dead-letter antrian
Antrian huruf mati bersifat opsional untuk pengiriman ke bucket Amazon S3 tujuan umum. Jika Anda tidak menentukan konfigurasi antrian huruf mati, pengiriman secara default menulis informasi kesalahan ke bucket tujuan yang sama dengan awalan kesalahan.
Jika Anda menentukan antrian huruf mati, Anda memberikan yang berikut:
-
BuckeTarn — ARN dari bucket Amazon S3 yang menerima informasi tentang catatan yang tidak dapat dikirimkan.
-
ExpectedBucketOwner— Akun AWS ID 12 digit pemilik yang diharapkan dari bucket antrean huruf mati (diperlukan saat Anda menentukan antrian huruf mati).
-
ErrorOutputPrefix— awalan opsional untuk mengatur objek metadata kegagalan dalam bucket.
Format rekaman
Pengiriman Amazon S3 mendukung format rekaman berikut untuk pengiriman ke bucket Amazon S3 tujuan umum:
-
JSON — catatan JSON biasa.
-
STRING — catatan UTF-8 string.
-
BYTE_ARRAY — catatan biner mentah.
catatan
Format GSR_JSON rekaman tidak didukung untuk pengiriman ke bucket Amazon S3 tujuan umum. Ini didukung hanya untuk pengiriman ke tabel streaming di Apache Iceberg, yang memerlukan AWS Glue Schema Registry.
Cross-account pengiriman
Pengiriman Amazon S3 mendukung pengiriman lintas akun ke bucket Amazon S3 tujuan umum. Aliran sumber dan bucket tujuan harus sama Wilayah AWS. Konfigurasikan kebijakan bucket tujuan untuk memberikan izin peran IAM pengiriman untuk menulis objek.
Enkripsi
Pengiriman Amazon S3 mendukung enkripsi sisi server dengan AWS KMS kunci yang dikelola pelanggan untuk objek yang dikirim ke bucket Amazon S3 tujuan umum. Anda dapat menentukan AWS KMS kunci yang dikelola pelanggan untuk mengenkripsi objek yang dikirimkan.
penting
Anda tidak dapat menggunakan aws/kinesis AWS KMS alias untuk enkripsi tujuan. Anda harus menggunakan kunci yang dikelola pelanggan AWS KMS .
Jika aliran data Kinesis sumber Anda dienkripsi, pertimbangan tambahan berlaku. Aliran yang dienkripsi dengan Kunci yang dikelola AWS (aws/kinesisalias) tidak didukung, dan peran eksekusi layanan memerlukan AWS KMS izin untuk mendekripsi catatan sumber. Untuk persyaratan enkripsi aliran sumber, lihatEnkripsi aliran sumber. Untuk AWS KMS
izin yang dibutuhkan peran eksekusi layanan, lihatIzin IAM untuk pengiriman data.