Halaman ini menjelaskan cara mengaktifkan atau menonaktifkan mesin columnar pada instance AlloyDB untuk PostgreSQL. Dokumen 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 menetapkan flag database, lihat Mengonfigurasi flag database instance.
Untuk mengetahui ringkasan konseptual mesin berbasis kolom AlloyDB, lihat artikel Tentang mesin berbasis kolom AlloyDB.
Mengaktifkan mesin columnar
Untuk menggunakan mesin berbasis kolom pada sebuah instance, tetapkan flag
google_columnar_engine.enabled
instance ke on
.
Untuk mengetahui informasi selengkapnya tentang menyetel flag database di AlloyDB, lihat Mengonfigurasi flag database instance.
Mengonfigurasi ukuran penyimpanan kolom
Saat mesin berbasis kolom diaktifkan pada instance, AlloyDB akan mengalokasikan sebagian memori instance untuk menyimpan data berbasis kolomnya. Mendedikasikan RAM berkecepatan tinggi untuk penyimpanan kolom Anda memastikan AlloyDB dapat mengakses data kolom secepat mungkin.
Cache memori dan penyimpanan bersama-sama mewakili kapasitas keseluruhan mesin berbasis kolom.
Mengonfigurasi memori untuk mesin columnar
Jika penyimpanan kolom menjadi lebih besar daripada bagian memori instance yang dialokasikan, AlloyDB akan otomatis menggunakan lapisan cache pokok 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 tanda dari instance.
Untuk mengetahui informasi selengkapnya tentang cara menyetel atau menghapus flag, lihat Mengonfigurasi flag database instance.
Mengonfigurasi cache penyimpanan untuk mesin columnar
Cache penyimpanan mesin columnar disediakan sesuai dengan tingkat instance.
Tingkat instance | Ukuran cache mesin columnar 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 |
Dengan tanda google_columnar_engine.storage_cache_size
, Anda dapat menyesuaikan cache penyimpanan mesin columnar, dengan batasan nilai minimum dan maksimum yang tercantum dalam tabel berikut:
Tingkat instance | Ukuran cache columnar engine minimum | Ukuran cache mesin columnar 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 columnar
Untuk melihat informasi tentang cache penyimpanan mesin columnar, Anda dapat menjalankan salah satu kueri SQL berikut.
Kueri SQL | Deskripsi |
---|---|
SELECT google_columnar_engine_storage_cache_used(); |
Menampilkan ukuran cache penyimpanan mesin berbasis kolom yang digunakan. |
SELECT google_columnar_engine_storage_cache_available(); |
Menampilkan ukuran cache penyimpanan mesin columnar yang tidak digunakan. |
Untuk memeriksa ukuran keseluruhan cache penyimpanan yang dikonfigurasi untuk mesin columnar, jalankan perintah berikut:
SHOW google_columnar_engine.storage_cache_size;
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 salah satu metode.
Untuk mengaktifkan gabungan tervektor pada instance, setel tanda
google_columnar_engine.enable_vectorized_join
instance ke on
.
AlloyDB mengalokasikan satu thread ke fitur gabungan vektor 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.
Memuat ulang mesin berbasis kolom secara manual
Secara default, mesin columnar disetel untuk otomatis memuat ulang penyimpanan kolom di latar belakang saat diaktifkan. Anda mungkin perlu memperbarui penyimpanan kolom secara manual dalam situasi tertentu, seperti jika refresh otomatis tidak memperbarui relasi dengan sejumlah besar 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 columnar
Untuk menonaktifkan mesin columbar pada instance, setel flag google_columnar_engine.enabled
ke off
.
Setelah Anda menyetel flag ini, instance akan dimulai ulang secara otomatis.
Memecahkan masalah mesin berbasis kolom
Jika kolom tidak terisi di mesin kolom, salah satu situasi berikut mungkin terjadi:
Kolom yang ingin Anda tambahkan berisi jenis data yang tidak didukung.
Persyaratan columnar engine tidak terpenuhi.
Untuk mengetahui penyebab masalah ini, coba langkah-langkah berikut:
Tinjau log audit instance Anda.
Konfirmasi bahwa tabel atau tampilan terwujud dalam kueri kita berada di mesin columnar.
Verifikasi penggunaan mesin berbasis kolom menggunakan pernyataan
EXPLAIN
.
Langkah berikutnya
Pelajari kolumnarisasi otomatis.