Skenario
Fitur pembagian partisi manual PolarDB-X cocok untuk aplikasi yang memerlukan performa tinggi, terutama aplikasi inti dengan konkurensi dan throughput tinggi. Untuk menggunakan fitur ini, Anda harus memahami cara kerja database terdistribusi. Pembagian partisi manual memungkinkan Anda membagi tabel secara horizontal sesuai dengan dimensi yang paling relevan dengan layanan Anda. Jika digunakan dengan benar, fitur ini dapat sepenuhnya memaksimalkan skalabilitas dan performa database terdistribusi.
Buat database yang menggunakan fitur pembagian partisi manual
Untuk menggunakan fitur pembagian partisi manual distribusi transparan di PolarDB-X, Anda dapat menggunakan pernyataan SQL untuk membuat database AUTO:
CREATE DATABASE autodb1 MODE='auto'Jenis dan penggunaan tabel dengan partisi manual
Fitur pembagian partisi manual di PolarDB-X memungkinkan Anda secara manual membuat tiga jenis tabel logis: tabel non-partisi, tabel siaran, dan tabel partisi.
Ketiga jenis tabel ini memiliki topologi tabel fisik yang berbeda dan cocok untuk skenario yang berbeda. Tabel berikut menggambarkan karakteristik masing-masing tabel:
Tipe Tabel Logis | Topologi Tabel Fisik | Skema | Beban Baca dan Tulis |
Tabel Non-Partisi | Tabel non-partisi sesuai dengan satu tabel fisik. | Tabel kecil dengan sedikit data dan konkurensi rendah. | Bacaan dan tulisan terpusat di satu node data. |
Tabel Siaran | Tabel siaran memiliki gambar di setiap node data, dan data antara gambar-gambar tersebut selalu konsisten. | Cocok untuk tabel dengan banyak pembacaan dan sedikit penulisan, seperti tabel konfigurasi. | Keseimbangan bacaan: Bacaan dapat dialokasikan secara acak ke node data yang berbeda. Penguatan penulisan: Data harus ditulis ke semua gambar di node data untuk menjaga konsistensi. |
Tabel Partisi | Tabel partisi memiliki beberapa partisi yang didistribusikan ke beberapa node data. Setiap partisi sesuai dengan satu tabel fisik. | Cocok untuk tabel dengan jumlah data besar, konkurensi tinggi, dan throughput tinggi. | Bacaan dan tulisan dapat diarahkan secara otomatis ke node data yang berbeda berdasarkan kolom kunci partisi untuk menyeimbangkan beban. |
Metode 1: Secara manual tentukan skema partisi untuk semua tabel
Secara manual buat tabel non-partisi
Sintaksis
CREATE TABLE xxx (...)
SINGLEContoh
CREATE TABLE sin_tbl(
id bigint not null auto_increment,
bid int,
name varchar(30),
birthday datetime,
primary key(id)
)
single ;Secara manual buat tabel siaran
Sintaksis
CREATE TABLE xxx (...)
BROADCASTContoh
CREATE TABLE bro_tbl(
id bigint not null auto_increment,
bid int,
name varchar(30),
birthday datetime,
primary key(id)
)
broadcast ;Secara manual buat tabel partisi
Untuk informasi lebih lanjut tentang cara membuat tabel partisi, lihat Membuat Tabel Partisi Secara Manual (Mode AUTO).
Metode 2: Secara manual nonaktifkan fitur pembagian partisi otomatis default
Konfigurasikan variabel global untuk menonaktifkan fitur pembagian partisi otomatis default:
SET GLOBAL AUTO_PARTITION=false;Setelah mengonfigurasi variabel global, Anda tidak perlu secara eksplisit menentukan kata kunci SINGLE saat membuat tabel non-partisi.