Memuat data dari file terkompresi dan tidak terkompresi - Amazon Redshift

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 secara masif (MPP) dan rentang pemindaian untuk memuat data dari file besar di bucket Amazon S3.

Memuat data dari beberapa file terkompresi

Dalam kasus di mana Anda memiliki data terkompresi, kami sarankan Anda membagi data untuk setiap tabel menjadi beberapa file. COPYPerintah dapat memuat data dari beberapa file secara paralel. Anda dapat memuat beberapa file dengan menentukan awalan umum, atau kunci awalan, untuk set, atau dengan secara eksplisit mencantumkan file 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 Pergeseran Merah Amazon.

Semua node berpartisipasi dalam menjalankan query paralel, bekerja pada data yang didistribusikan secara merata di seluruh irisan. Jika Anda memiliki cluster dengan dua node dc2.large, Anda dapat membagi data Anda menjadi empat file atau beberapa kelipatan empat. Amazon Redshift tidak memperhitungkan ukuran file saat membagi beban kerja. Dengan demikian, Anda perlu memastikan bahwa file berukuran kira-kira 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 mungkin 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 menggunakan file manifes, file 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, COPY perintah tersebut menggunakan arsitektur massively parallel processing () MPP di Amazon Redshift. Amazon Redshift secara otomatis menggunakan irisan yang bekerja secara paralel untuk memuat rentang data dari file besar di bucket Amazon S3. File harus dibatasi agar pemuatan paralel terjadi. Misalnya, pipa dibatasi. Pemuatan data paralel otomatis dengan COPY perintah juga tersedia untuk CSV file. Anda juga dapat memanfaatkan pemrosesan paralel dengan mengatur kunci distribusi pada tabel Anda. Untuk informasi selengkapnya tentang kunci distribusi, lihatBekerja dengan gaya distribusi data.

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

Data dari file atau file dimuat ke dalam tabel target, satu baris per baris. Bidang dalam file data dicocokkan dengan kolom tabel secara berurutan, kiri ke kanan. Bidang dalam file data dapat dengan 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 termasuk dalam daftar kolom yang ditentukan dalam COPY perintah, itu 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 dikompresi dan dibatasi:

  1. Unggah file Anda ke Amazon S3.

  2. Jalankan COPY perintah untuk memuat tabel.

  3. Verifikasi bahwa data dimuat dengan benar.

Untuk contoh COPY perintah, lihatCOPYcontoh. Untuk informasi tentang data yang dimuat ke Amazon Redshift, periksa tabel STL_LOAD_COMMITS dan STL_LOAD_ERRORS sistem.

Untuk informasi selengkapnya tentang node dan irisan yang terdapat di masing-masing node, lihat Tentang cluster dan node di Panduan Manajemen Pergeseran Merah Amazon.