View a markdown version of this page

Gaya distribusi - 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.

Gaya distribusi

Saat Anda membuat tabel, Anda dapat menentukan salah satu gaya distribusi berikut: AUTO, EVEN, KEY, atau ALL.

Jika Anda tidak menentukan gaya distribusi, Amazon Redshift menggunakan distribusi AUTO.

Distribusi AUTO

Dengan distribusi AUTO, Amazon Redshift menetapkan gaya distribusi optimal berdasarkan ukuran data tabel. Misalnya, jika gaya distribusi AUTO ditentukan, Amazon Redshift awalnya menetapkan gaya distribusi ALL ke tabel kecil. Saat tabel bertambah besar, Amazon Redshift mungkin mengubah gaya distribusi menjadi KEY, memilih kunci utama (atau kolom kunci primer komposit) sebagai kunci distribusi. Jika tabel bertambah besar dan tidak ada kolom yang cocok untuk menjadi kunci distribusi, Amazon Redshift mengubah gaya distribusi menjadi EVEN. Perubahan gaya distribusi terjadi di latar belakang dengan dampak minimal terhadap kueri pengguna.

Untuk melihat tindakan yang dilakukan Amazon Redshift secara otomatis untuk mengubah kunci distribusi tabel, lihatSVL_AUTO_WORKER_ACTION. Untuk melihat rekomendasi saat ini mengenai mengubah kunci distribusi tabel, lihatSVV_ALTER_TABLE_REKOMENDASI.

Untuk melihat gaya distribusi yang diterapkan pada tabel, kueri tampilan katalog sistem PG_CLASS_INFO. Untuk informasi selengkapnya, lihat Melihat gaya distribusi. Jika Anda tidak menentukan gaya distribusi dengan pernyataan CREATE TABLE, Amazon Redshift menerapkan distribusi AUTO.

Distribusi EVEN

Node pemimpin mendistribusikan baris di seluruh irisan dengan cara round-robin, terlepas dari nilai dalam kolom tertentu. Distribusi EVEN sesuai ketika tabel tidak berpartisipasi dalam gabungan. Ini juga tepat ketika tidak ada pilihan yang jelas antara distribusi KEY dan distribusi SEMUA.

Distribusi KUNCI

Baris didistribusikan sesuai dengan nilai dalam satu kolom. Node pemimpin menempatkan nilai yang cocok pada irisan simpul yang sama. Jika Anda mendistribusikan sepasang tabel pada kunci penggabungan, node pemimpin mengkolokasikan baris pada irisan sesuai dengan nilai-nilai di kolom penggabungan. Dengan cara ini, nilai yang cocok dari kolom umum secara fisik disimpan bersama.

SEMUA distribusi

Salinan seluruh tabel didistribusikan ke setiap node. Di mana distribusi EVEN atau distribusi KEY hanya menempatkan sebagian dari baris tabel pada setiap node, distribusi ALL memastikan bahwa setiap baris dikolokasikan untuk setiap gabungan yang diikuti tabel.

Distribusi ALL mengalikan penyimpanan yang diperlukan dengan jumlah node dalam cluster, sehingga dibutuhkan waktu lebih lama untuk memuat, memperbarui, atau menyisipkan data ke beberapa tabel. Distribusi ALL hanya sesuai untuk tabel yang bergerak relatif lambat; yaitu tabel yang tidak sering diperbarui atau ekstensif. Karena biaya mendistribusikan ulang tabel kecil selama kueri rendah, tidak ada manfaat signifikan untuk mendefinisikan tabel dimensi kecil sebagai DISTSTYLE ALL.

catatan

Setelah Anda menentukan gaya distribusi untuk kolom, Amazon Redshift menangani distribusi data di tingkat cluster. Amazon Redshift tidak memerlukan atau mendukung konsep partisi data dalam objek database. Anda tidak perlu membuat ruang tabel atau menentukan skema partisi untuk tabel.

Dalam skenario tertentu, Anda dapat mengubah gaya distribusi tabel setelah dibuat. Untuk informasi selengkapnya, lihat ALTER TABLE. Untuk skenario ketika Anda tidak dapat mengubah gaya distribusi tabel setelah dibuat, Anda dapat membuat ulang tabel dan mengisi tabel baru dengan salinan mendalam. Untuk informasi selengkapnya, lihat Melakukan salinan mendalam