Halaman ini menjelaskan cara mempertahankan keaktualan data di penyimpanan kolom mesin kolom di AlloyDB Omni dalam penampung.
Saat baris tabel ditambahkan, dihapus, atau diperbarui, mesin kolom tidak akan langsung memperbarui data di penyimpanan kolom. Sebagai gantinya, sistem ini menandai konten yang terpengaruh di penyimpanan kolom sebagai tidak valid, dan kueri direncanakan dan dieksekusi menggunakan data berorientasi kolom dari penyimpanan kolom dan data berorientasi baris dari cache baris dan penyimpanan database.
Seiring waktu, semakin banyak blok data yang menjadi tidak valid, peningkatan performa kueri yang disediakan oleh mesin kolom akan berkurang hingga data kolom perlu dimuat ulang untuk mendapatkan kembali peningkatan performa kueri. Jika nilai minimum pembaruan ini tercapai, mesin kolom akan menggunakan tugas latar belakang untuk memuat ulang data yang tidak valid di penyimpanan kolom. Secara default, mesin kolom menggunakan nilai minimum refresh sebesar 50, yang menunjukkan bahwa konten tertentu di penyimpanan kolom akan ditandai untuk dimuat ulang saat 50% kontennya menjadi tidak valid. Anda dapat mengubah nilai minimum pembaruan ini untuk menyesuaikan overhead pembaruan otomatis dan berpotensi mendapatkan performa kueri berkelanjutan yang lebih baik untuk beban kerja aplikasi Anda.
Selain itu, Anda dapat memuat ulang data tabel secara manual di penyimpanan kolom kapan saja. Biasanya, Anda melakukan pembaruan manual saat ingin perubahan pada tabel ditampilkan di penyimpanan kolom sesegera mungkin setelah melakukan perubahan.
Mengubah nilai minimum refresh mesin kolom
Edit nilai
flag database google_columnar_engine.refresh_threshold_percentage
untuk
mengubah nilai minimum refresh mesin kolom.
ALTER SYSTEM SET google_columnar_engine.refresh_threshold_percentage=THRESHOLD;
THRESHOLD
: nilai bilangan bulat antara 1
dan
100
. Nilai ini menentukan persentase blok data dalam konten
yang harus menjadi tidak valid agar konten ditandai untuk dimuat ulang.
Memuat ulang data tabel secara manual di penyimpanan kolom
Jalankan fungsi SQL google_columnar_engine_refresh
untuk memuat ulang data tabel secara manual di penyimpanan kolom dalam memori.
SELECT google_columnar_engine_refresh(TABLE_NAME);
TABLE_NAME
: string yang berisi nama tabel atau tampilan terwujud. Jika tabel atau tampilan berada dalam skema selain
public
, tentukan nama skema menggunakan format
SCHEMA_NAME.TABLE_NAME
—misalnya, myschema.mytable
.