Menggunakan manifes untuk menentukan file data - Amazon Redshift

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

Menggunakan manifes untuk menentukan file data

Anda dapat menggunakan manifes untuk memastikan bahwa perintah COPY memuat semua file yang diperlukan, dan hanya file yang diperlukan, untuk memuat data. Anda dapat menggunakan manifes untuk memuat file dari berbagai bucket atau file yang tidak memiliki awalan yang sama. Alih-alih menyediakan jalur objek untuk perintah COPY, Anda memberikan nama file teks berformat JSON yang secara eksplisit mencantumkan file yang akan dimuat. URL dalam manifes harus menentukan nama bucket dan path objek lengkap untuk file, bukan hanya awalan.

Untuk informasi selengkapnya tentang file manifes, lihat contoh COPY Menggunakan manifes untuk menentukan file data.

Contoh berikut menunjukkan JSON untuk memuat file dari bucket yang berbeda dan dengan nama file yang dimulai dengan stempel tanggal.

{ "entries": [ {"url":"s3://DOC-EXAMPLE-BUCKET1/2013-10-04-custdata", "mandatory":true}, {"url":"s3://DOC-EXAMPLE-BUCKET1/2013-10-05-custdata", "mandatory":true}, {"url":"s3://DOC-EXAMPLE-BUCKET2/2013-10-04-custdata", "mandatory":true}, {"url":"s3://DOC-EXAMPLE-BUCKET2/2013-10-05-custdata", "mandatory":true} ] }

mandatoryBendera opsional menentukan apakah COPY harus mengembalikan kesalahan jika file tidak ditemukan. Default dari mandatory adalahfalse. Terlepas dari pengaturan wajib, COPY akan berakhir jika tidak ada file yang ditemukan.

Contoh berikut menjalankan perintah COPY dengan manifes dalam contoh sebelumnya, yang diberi namacust.manifest.

COPY customer FROM 's3://DOC-EXAMPLE-BUCKET/cust.manifest' IAM_ROLE 'arn:aws:iam::0123456789012:role/MyRedshiftRole' MANIFEST;

Menggunakan manifes yang dibuat oleh UNLOAD

Manifes yang dibuat oleh MEMBONGKAR operasi menggunakan parameter MANIFEST mungkin memiliki kunci yang tidak diperlukan untuk operasi COPY. Misalnya, UNLOAD manifes berikut menyertakan meta kunci yang diperlukan untuk tabel eksternal Amazon Redshift Spectrum dan untuk memuat file data dalam format ORC file Parquet atau. metaKunci berisi content_length kunci dengan nilai yang merupakan ukuran sebenarnya dari file dalam byte. Operasi COPY hanya membutuhkan url kunci dan mandatory kunci opsional.

{ "entries": [ {"url":"s3://DOC-EXAMPLE-BUCKET/unload/manifest_0000_part_00", "meta": { "content_length": 5956875 }}, {"url":"s3://DOC-EXAMPLE-BUCKET/unload/unload/manifest_0001_part_00", "meta": { "content_length": 5997091 }} ] }

Untuk informasi selengkapnya tentang file manifes, lihatExample: COPY from Amazon S3 using a manifest.