View a markdown version of this page

Memuat data dari file terkompresi dan tidak terkompresi - Amazon Redshift

Amazon Redshift tidak akan lagi mendukung penggunaan Python UDF setelah 30 Juni 2026. Kami akan mulai menegakkannya secara bertahap. Untuk informasi lebih lanjut tentang detail opsi akhir masa pakai dan migrasi Python, lihat posting blog yang diterbitkan pada 30 Juni 2025.

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

Memuat data dari file terkompresi dan tidak terkompresi

Saat memuat data terkompresi, sebaiknya Anda membagi data untuk setiap tabel menjadi beberapa file. Saat Anda memuat data yang tidak terkompresi dan dibatasi, perintah COPY menggunakan pemrosesan paralel besar-besaran (MPP) dan rentang pemindaian untuk memuat data dari file besar dalam bucket Amazon S3.

Memuat data dari beberapa file terkompresi

Jika Anda memiliki data terkompresi, kami sarankan Anda membagi data untuk setiap tabel menjadi beberapa file. Perintah COPY dapat memuat data dari beberapa file secara paralel. Anda dapat memuat beberapa file dengan menentukan awalan umum, atau kunci awalan, untuk set, atau dengan mencantumkan file secara eksplisit dalam file manifes.

Pisahkan data Anda menjadi file sehingga jumlah file adalah kelipatan dari jumlah irisan di cluster Anda. Dengan begitu, Amazon Redshift dapat membagi data secara merata di antara irisan. Jumlah irisan per node tergantung pada ukuran node cluster. Misalnya, setiap node komputasi dc2.large memiliki dua irisan, dan setiap node komputasi dc2.8xlarge memiliki 16 irisan. Untuk informasi selengkapnya tentang jumlah irisan yang dimiliki setiap ukuran node, lihat Tentang cluster dan node di Panduan Manajemen Amazon Redshift.

Semua node berpartisipasi dalam menjalankan kueri paralel, mengerjakan data yang didistribusikan serata mungkin di seluruh irisan. Jika Anda memiliki cluster dengan dua node dc2.large, Anda dapat membagi data Anda menjadi empat file atau beberapa kelipatan dari empat. Amazon Redshift tidak memperhitungkan ukuran file saat membagi beban kerja. Dengan demikian, Anda perlu memastikan bahwa file kira-kira berukuran sama, dari 1 MB hingga 1 GB setelah kompresi.

Untuk menggunakan awalan objek untuk mengidentifikasi file beban, beri nama setiap file dengan awalan umum. Misalnya, Anda dapat membagi venue.txt file mungkin dibagi menjadi empat file, sebagai berikut.

venue.txt.1 venue.txt.2 venue.txt.3 venue.txt.4

Jika Anda meletakkan beberapa file dalam folder di bucket Anda dan menentukan nama folder sebagai awalan, COPY memuat semua file dalam folder. Jika Anda secara eksplisit mencantumkan file yang akan dimuat dengan menggunakan file manifes, file tersebut dapat berada di bucket atau folder yang berbeda.

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

Memuat data dari file yang tidak terkompresi dan dibatasi

Saat Anda memuat data yang tidak terkompresi dan dibatasi, perintah COPY menggunakan arsitektur pemrosesan paralel massif (MPP) di Amazon Redshift. Amazon Redshift secara otomatis menggunakan irisan yang bekerja secara paralel untuk memuat rentang data dari file besar dalam bucket Amazon S3. File harus dibatasi agar pemuatan paralel terjadi. Misalnya, pipa dibatasi. Pemuatan data paralel otomatis dengan perintah COPY juga tersedia untuk file CSV. Anda juga dapat memanfaatkan pemrosesan paralel dengan mengatur kunci distribusi pada tabel Anda. Untuk informasi selengkapnya tentang kunci distribusi, lihatDistribusi data untuk optimasi kueri.

Pemuatan data paralel otomatis tidak didukung ketika kueri COPY menyertakan salah satu kata kunci berikut: ESCAPE, REMOVEQUOTES, dan FIXEDWIDTH.

Data dari file atau file dimuat ke tabel target, satu baris per baris. Bidang dalam file data dicocokkan dengan kolom tabel secara berurutan, kiri ke kanan. Bidang dalam file data dapat berupa lebar tetap atau dibatasi karakter; pembatas default adalah pipa (|). Secara default, semua kolom tabel dimuat, tetapi Anda dapat secara opsional menentukan daftar kolom yang dipisahkan koma. Jika kolom tabel tidak disertakan dalam daftar kolom yang ditentukan dalam perintah COPY, kolom tersebut dimuat dengan nilai default. Untuk informasi selengkapnya, lihat Memuat nilai kolom default.

Ikuti proses umum ini untuk memuat data dari Amazon S3, saat data Anda tidak terkompresi dan dibatasi:

  1. Unggah file Anda ke Amazon S3.

  2. Jalankan perintah COPY untuk memuat tabel.

  3. Pastikan data dimuat dengan benar.

Untuk contoh perintah SALIN, lihatContoh COPY. Untuk informasi tentang data yang dimuat ke Amazon Redshift, periksa tabel STL_LOAD_COMMIT dan STL_LOAD_ERROR sistem.

Untuk informasi selengkapnya tentang node dan irisan yang terkandung di masing-masing node, lihat Tentang cluster dan node di Panduan Manajemen Amazon Redshift.