Halaman ini menjelaskan cara mengaktifkan atau menonaktifkan mesin kolom di instance AlloyDB untuk PostgreSQL. Panduan ini juga membahas cara mengonfigurasi ukuran awal yang sesuai untuk penyimpanan kolomnya, serta setelan cache memori dan penyimpanan untuk performa yang optimal.
Untuk menggunakan mesin berbasis kolom saat menggunakan AlloyDB Omni, lihat Mengaktifkan mesin berbasis kolom di AlloyDB Omni.
Setiap tindakan ini melibatkan perubahan nilai flag database di salah satu instance AlloyDB Anda. Untuk mengetahui informasi selengkapnya tentang cara menetapkan flag database, lihat Mengonfigurasi flag database instance.
Untuk ringkasan konseptual mesin berbasis kolom AlloyDB, lihat Tentang mesin berbasis kolom AlloyDB.
Mengaktifkan mesin kolom
Untuk menggunakan mesin kolom pada instance, tetapkan flag
google_columnar_engine.enabled
instance ke on
.
Untuk mengetahui informasi selengkapnya tentang cara menetapkan flag database di AlloyDB, lihat Mengonfigurasi flag database instance.
Mengonfigurasi ukuran penyimpanan kolom
Saat mesin kolom diaktifkan di instance, AlloyDB mengalokasikan sebagian memori instance untuk menyimpan data kolomnya. Dengan menyediakan RAM berkecepatan tinggi untuk penyimpanan kolom, Anda memastikan bahwa AlloyDB dapat mengakses data kolom sesegera mungkin.
Cache memori dan penyimpanan bersama-sama mewakili kapasitas keseluruhan mesin kolom.
Mengonfigurasi memori untuk mesin kolom
Jika penyimpanan kolom menjadi lebih besar dari bagian memori instance Anda yang dialokasikan, AlloyDB akan otomatis menggunakan lapisan cache dasar instance untuk menyimpan data kolom tambahan.Secara default, AlloyDB mengalokasikan 30% memori instance ke penyimpanan kolom, dan secara otomatis menyesuaikan total alokasi jika Anda mengubah ukuran instance. Anda dapat mengubah memori instance hingga maksimum 50%. Untuk menemukan ukuran memori mesin kolom yang direkomendasikan untuk instance Anda, lihat Merekomendasikan ukuran memori penyimpanan kolom.
Anda juga dapat menetapkan alokasi ke ukuran tetap dan spesifik menggunakan
flag google_columnar_engine.memory_size_in_mb
.
Agar AlloyDB kembali ke alokasi default,
hapus flag dari instance.
Untuk informasi selengkapnya tentang cara menetapkan atau menghapus flag, lihat Mengonfigurasi flag database instance.
Mengonfigurasi cache penyimpanan untuk mesin kolom
Cache penyimpanan mesin kolom disediakan sesuai dengan tingkat instance.
Tingkat instance | Ukuran cache mesin kolom default | |
---|---|---|
Instance utama | Instance replika baca | |
2 vCPU | 18,75 GB | 37,5 GB |
4 vCPU | 18,75 GB | 37,5 GB |
8 vCPU | 18,75 GB | 37,5 GB |
16 vCPU | 37,5 GB | 37,5 GB |
32 vCPU | 75 GB | 75 GB |
64 vCPU | 150 GB | 150 GB |
96 vCPU | 300 GB | 300 GB |
128 vCPU | 450 GB | 450 GB |
Flag google_columnar_engine.storage_cache_size
memungkinkan Anda menyesuaikan cache penyimpanan mesin kolom, dengan batasan nilai minimum dan maksimum yang tercantum dalam tabel berikut:
Tingkat instance | Ukuran cache mesin kolom minimum | Ukuran cache mesin kolom maksimum | |
---|---|---|---|
Instance utama | Instance replika baca | ||
2 vCPU | 0 | 187,5 GB | 375 GB |
4 vCPU | 0 | 187,5 GB | 375 GB |
8 vCPU | 0 | 187,5 GB | 375 GB |
16 vCPU | 0 | 375 GB | 375 GB |
32 vCPU | 0 | 750 GB | 750 GB |
64 vCPU | 0 | 1.500 GB | 1.500 GB |
96 vCPU | 0 | 3000 GB | 3000 GB |
128 vCPU | 0 | 4.500 GB | 4.500 GB |
Memantau data cache penyimpanan untuk mesin kolom
Untuk melihat informasi tentang cache penyimpanan mesin kolom, Anda dapat menjalankan salah satu kueri SQL berikut.
Kueri SQL | Deskripsi |
---|---|
SELECT google_columnar_engine_storage_cache_used(); |
Menampilkan ukuran cache penyimpanan mesin kolom yang digunakan. |
SELECT google_columnar_engine_storage_cache_available(); |
Menampilkan ukuran cache penyimpanan mesin kolom yang tidak digunakan. |
SELECT google_columnar_engine_storage_cache_total(); |
Menampilkan jumlah total ukuran cache penyimpanan yang dikonfigurasi untuk mesin kolom. |
Mengaktifkan join vektor
Mesin kolom memiliki fitur join vektor yang dapat meningkatkan performa join dengan menerapkan pemrosesan vektor ke kueri yang memenuhi syarat.
Setelah Anda mengaktifkan join vektor, perencana kueri AlloyDB memiliki opsi untuk menerapkan operator join vektor, bukan operator join hash PostgreSQL standar. Perencana membuat keputusan ini dengan membandingkan biaya eksekusi kueri menggunakan salah satu metode.
Untuk mengaktifkan join vektor pada instance, tetapkan tanda
google_columnar_engine.enable_vectorized_join
instance ke on
.
AlloyDB mengalokasikan satu thread ke fitur join
vektor secara default. Anda dapat meningkatkan jumlah thread yang tersedia untuk
fitur ini dengan menetapkan
tanda google_columnar_engine.vectorized_join_threads
ke nilai yang lebih besar.
Memuat ulang mesin kolom secara manual
Secara default, mesin kolom disetel untuk otomatis memuat ulang penyimpanan kolom di latar belakang saat diaktifkan. Anda mungkin perlu memuat ulang penyimpanan kolom secara manual dalam situasi tertentu, seperti jika pembaruan otomatis tidak memuat ulang hubungan dengan banyak blok yang tidak valid.
Untuk memuat ulang mesin kolom secara manual, jalankan kueri SQL berikut:
SELECT google_columnar_engine_refresh('TABLE_NAME');
Ganti TABLE_NAME
dengan nama tabel atau tampilan terwujud yang ingin Anda
muat ulang secara manual.
Menonaktifkan mesin kolom
Untuk menonaktifkan mesin kolom pada instance, tetapkan flag google_columnar_engine.enabled
ke off
.
Setelah Anda menetapkan flag ini, instance akan otomatis dimulai ulang.
Memecahkan masalah mesin kolom
Jika kolom tidak terisi di mesin kolom, salah satu situasi berikut mungkin terjadi:
Kolom yang ingin Anda tambahkan menyertakan jenis data yang tidak didukung.
Persyaratan mesin kolom tidak terpenuhi.
Untuk menemukan penyebab masalah ini, coba langkah-langkah berikut:
Tinjau log audit instance Anda.
Konfirmasi bahwa tabel atau tampilan terwujud dalam kueri kita berada di mesin kolom.
Verifikasi penggunaan mesin kolom menggunakan pernyataan
EXPLAIN
.
Langkah berikutnya
Pelajari pembentukan kolom otomatis.