Untuk mengetahui ringkasan konseptual mesin berbasis kolom AlloyDB, lihat Ringkasan mesin berbasis kolom AlloyDB Omni.
Mengaktifkan mesin columnar
Untuk menggunakan mesin berbasis kolom pada sebuah instance, tetapkan flag
google_columnar_engine.enabled
instance ke on
.
Kubernetes
Untuk menyetel flag google_columnar_engine.enabled
ke on
, ubah manifes cluster database Anda untuk menambahkan atribut parameters
ke bagian primarySpec
:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: CLUSTER_NAME
spec:
databaseVersion: "16.8.0"
primarySpec:
parameters:
google_columnar_engine.enabled: "on"
Ganti CLUSTER_NAME
dengan nama cluster database Anda. Nama cluster database ini sama dengan yang Anda deklarasikan saat Anda membuatnya.
Mengonfigurasi ukuran penyimpanan kolom
Saat columnar engine diaktifkan pada instance, AlloyDB Omni akan mengalokasikan sebagian memori instance untuk menyimpan data berbasis kolomnya. Mendedikasikan RAM berkecepatan tinggi untuk penyimpanan kolom Anda memastikan bahwa AlloyDB Omni dapat mengakses data kolom secepat mungkin.
Cache memori dan penyimpanan bersama-sama menunjukkan kapasitas keseluruhan columnar engine.
Mengonfigurasi memori
Anda dapat menyetel alokasi ke ukuran tetap menggunakan
flag google_columnar_engine.memory_size_in_mb
.
Kubernetes
Untuk menyetel flag google_columnar_engine.memory_size_in_mb
, ubah manifes cluster database Anda untuk menambahkan atribut parameters
ke bagian primarySpec
:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: CLUSTER_NAME
spec:
databaseVersion: "16.8.0"
primarySpec:
parameters:
google_columnar_engine.memory_size_in_mb: "COLUMN_MEMORY_SIZE"
Ganti kode berikut:
CLUSTER_NAME
: nama cluster database Anda. Nama cluster database ini sama dengan yang Anda deklarasikan saat Anda membuatnya.COLUMN_MEMORY_SIZE
: ukuran baru penyimpanan kolom, dalam megabyte—misalnya,256
.
Mengonfigurasi cache penyimpanan
Kubernetes
Untuk mengaktifkan cache penyimpanan untuk database Anda, ubah manifes cluster database Anda untuk menambahkan atribut columnarSpillToDisk
ke bagian features
dari bagian primarySpec
:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: CLUSTER_NAME
spec:
databaseVersion: "16.8.0"
primarySpec:
features:
columnarSpillToDisk:
cacheSize: STORAGE_CACHE_SIZE
ultraFastCache:
cacheSize: ULTRAFAST_CACHE_SIZE
genericVolume:
storageClass: "STORAGE_CLASS_NAME"
...
Ganti kode berikut:
CLUSTER_NAME
: nama cluster database Anda. Nama cluster database ini sama dengan yang Anda deklarasikan saat Anda membuatnya.STORAGE_CACHE_SIZE
: ukuran cache penyimpanan berkolom—misalnya,5Gi
. Jika Anda tidak menentukan nilai untuk kolom ini, 5% cache disk akan dialokasikan ke mesin columnar secara default.ULTRAFAST_CACHE_SIZE
: ukuran cache—misalnya,100Gi
. Nilainya harus lebih besar darishared_buffers
. Kolom ini bersifat opsional. Jika Anda tidak menentukan nilai kolom ini, AlloyDB Omni akan menggunakan semua ruang yang tersisa di disk, yang berlaku untuk AlloyDB Omni dalam penampung dan di cluster Kubernetes. Untuk mengetahui informasi selengkapnya tentang satuan ukuran, lihat Unit resource memori.STORAGE_CLASS_NAME
: nama class penyimpanan volume cache ultra cepat—misalnya,local-storage
.
Mengaktifkan gabungan tervektorisasi
Mesin columnar memiliki fitur penggabungan tervektorisasi yang dapat meningkatkan performa penggabungan dengan menerapkan pemrosesan tervektorisasi ke kueri yang memenuhi syarat.
Setelah Anda mengaktifkan gabungan tervektorisasi, perencana kueri AlloyDB memiliki opsi untuk menerapkan operator gabungan tervektorisasi, bukan operator gabungan hash PostgreSQL standar. Perencana membuat keputusan ini dengan membandingkan biaya eksekusi kueri menggunakan setiap metode.
Untuk mengaktifkan gabungan tervektor pada instance, setel tanda
google_columnar_engine.enable_vectorized_join
instance ke on
.
Untuk menyetel tanda ini pada instance, jalankan perintah PostgreSQL ALTER SYSTEM
:
ALTER SYSTEM SET google_columnar_engine.enable_vectorized_join = 'on';
AlloyDB Omni mengalokasikan satu thread ke fitur gabungan tervektor secara default. Anda dapat meningkatkan jumlah thread yang tersedia untuk fitur ini dengan menyetel tanda google_columnar_engine.vectorized_join_threads
ke nilai yang lebih besar. Nilai maksimumnya adalah cpu_count * 2
.
Memuat ulang mesin berbasis kolom secara manual
Secara default, saat diaktifkan, columnar engine akan memuat ulang column store di latar belakang.
Untuk memuat ulang mesin kolom secara manual, jalankan kueri SQL berikut:
SELECT google_columnar_engine_refresh(relation =>'TABLE_NAME');
Ganti TABLE_NAME
dengan nama tabel atau tampilan terwujud yang ingin Anda
muat ulang secara manual.
Menonaktifkan mesin columnar
Untuk menonaktifkan mesin columbar pada instance, setel flag google_columnar_engine.enabled
ke off
.
Kubernetes
Untuk menyetel flag google_columnar_engine.enabled
ke off
, ubah manifes cluster database Anda untuk menambahkan atribut parameters
ke bagian primarySpec
:
apiVersion: alloydbomni.dbadmin.goog/v1
kind: DBCluster
metadata:
name: CLUSTER_NAME
spec:
databaseVersion: "16.8.0"
primarySpec:
parameters:
google_columnar_engine.enabled: "off"
Ganti CLUSTER_NAME
dengan nama cluster database Anda. Nama cluster database ini sama dengan yang Anda deklarasikan saat Anda membuatnya.
Langkah berikutnya
Pelajari tutorial Google Codelab Mempercepat kueri analisis dengan columnar engine di AlloyDB Omni.