Topik ini menjelaskan skenario penggunaan partisi hash default daftar.
Partisi daftar tidak cocok untuk semua skenario. Dalam beberapa kasus, nilai kunci partisi tidak dapat dienumerasi atau jumlah total nilai kunci partisi sangat besar namun sesuai dengan volume data yang kecil. Sebagai contoh, 20% dari nilai kunci partisi memegang 80% data, sedangkan 80% dari nilai kunci partisi hanya memegang 20% data sisanya. Dalam situasi seperti ini, Anda dapat memilih partisi hash default daftar. Pendekatan ini memungkinkan Anda menggunakan partisi daftar untuk 80% data dan partisi hash untuk 20% data sisanya.
Sebagai contoh, dalam sistem bisnis multi-penyewa, volume data pengguna yang dihasilkan oleh setiap penyewa bervariasi secara signifikan. Anda dapat menggunakan partisi daftar untuk mempartisi penyewa dengan volume data besar dan partisi hash untuk mempartisi penyewa dengan volume data kecil. Tabel berikut menunjukkan volume data dan partisi dari berbagai penyewa:
ID Penyewa | Volume Data | Partisi |
Akun Utama 1 | 30 juta | p1 |
Akun Utama 2 | 26 juta | p2 |
Akun Utama 3 | 24 juta | p3 |
Akun Utama 4 | 20 juta | p4 |
Pelanggan UKM | 30 juta | p_others |
CREATE TABLE cust_orders
(
customer_id VARCHAR(36),
year VARCHAR(60),
order_id INT,
order_content text
) PARTITION BY LIST COLUMNS(customer_id)
(
PARTITION p1 VALUES IN ('Key account 1'),
PARTITION p2 VALUES IN ('Key account 2'),
PARTITION p3 VALUES IN ('Key account 3'),
PARTITION p4 VALUES IN ('Key account 4'),
PARTITION p_others DEFAULT PARTITIONS 3
);