Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menunjuk gaya distribusi
Pertimbangan dan rekomendasi untuk menunjuk gaya distribusi di bagian ini menggunakan skema bintang sebagai contoh. Desain database Anda mungkin didasarkan pada skema bintang, beberapa varian skema bintang, atau skema yang sama sekali berbeda. Amazon Redshift dirancang untuk bekerja secara efektif dengan desain skema apa pun yang Anda pilih. Prinsip-prinsip dalam bagian ini dapat diterapkan pada skema desain apa pun.
-
Tentukan kunci utama dan kunci asing untuk semua tabel Anda.
Amazon Redshift tidak menerapkan batasan kunci primer dan kunci asing, tetapi pengoptimal kueri menggunakannya saat menghasilkan paket kueri. Jika Anda menyetel kunci utama dan kunci asing, aplikasi Anda harus mempertahankan validitas kunci.
-
Bagikan tabel fakta dan tabel dimensi terbesarnya pada kolom umum mereka.
Pilih dimensi terbesar berdasarkan ukuran kumpulan data yang berpartisipasi dalam gabungan yang paling umum, tidak hanya ukuran tabel. Jika tabel biasanya disaring, menggunakan WHERE klausa, hanya sebagian dari barisnya yang berpartisipasi dalam gabungan. Tabel semacam itu memiliki dampak yang lebih kecil pada redistribusi daripada tabel yang lebih kecil yang memberikan kontribusi lebih banyak data. Tentukan kunci utama tabel dimensi dan kunci asing yang sesuai dengan tabel fakta sebagaiDISTKEY. Jika beberapa tabel menggunakan kunci distribusi yang sama, mereka juga ditempatkan dengan tabel fakta. Tabel fakta Anda hanya dapat memiliki satu kunci distribusi. Setiap tabel yang bergabung pada kunci lain tidak ditempatkan dengan tabel fakta.
-
Tentukan kunci distribusi untuk tabel dimensi lainnya.
Bagikan tabel pada kunci utama atau kunci asing mereka, tergantung pada bagaimana mereka paling sering bergabung dengan tabel lain.
-
Evaluasi apakah akan mengubah beberapa tabel dimensi untuk menggunakan ALL distribusi.
Jika tabel dimensi tidak dapat ditempatkan dengan tabel fakta atau tabel gabungan penting lainnya, Anda dapat meningkatkan kinerja kueri secara signifikan dengan mendistribusikan seluruh tabel ke semua node. Menggunakan ALL distribusi melipatgandakan kebutuhan ruang penyimpanan dan meningkatkan waktu muat dan operasi pemeliharaan, jadi Anda harus mempertimbangkan semua faktor sebelum memilih ALL distribusi. Bagian berikut menjelaskan cara mengidentifikasi kandidat untuk ALL distribusi dengan mengevaluasi EXPLAIN rencana.
-
Gunakan AUTO distribusi untuk tabel yang tersisa.
Jika tabel sebagian besar didenormalisasi dan tidak berpartisipasi dalam gabungan, atau jika Anda tidak memiliki pilihan yang jelas untuk gaya distribusi lain, gunakan distribusi. AUTO
Agar Amazon Redshift memilih gaya distribusi yang sesuai, jangan tentukan gaya distribusi secara eksplisit.