Mempercepat performa database menggunakan cache disk

Pilih versi dokumentasi:

Halaman ini menjelaskan cara menyediakan, menyiapkan, dan menggunakan disk caching di AlloyDB Omni untuk meningkatkan performa penginstalan AlloyDB Omni.

Selain buffer bersama dalam memori PostgreSQL standar, disk cache AlloyDB Omni memungkinkan penyimpanan buffer di penyimpanan cepat seperti solid-state drive (SSD). Disk caching mempercepat pengambilan data dalam penginstalan AlloyDB Omni dengan direktori data yang berada di penyimpanan yang lebih lambat.

Seperti buffer bersama PostgreSQL, disk cache AlloyDB Omni bersifat non-persisten, yang berarti data yang di-cache akan hilang saat dimulai ulang.

Secara default, disk cache AlloyDB Omni menggunakan semua penyimpanan yang dilaporkan oleh sistem file. Anda dapat menentukan jumlah penyimpanan yang dicadangkan untuk data caching menggunakan parameter omni_disk_cache_file_size.

Mengaktifkan disk cache AlloyDB Omni

Untuk mengaktifkan disk cache, selesaikan semua subbagian berikut:

  1. Menyediakan disk dan membuat sistem file
  2. Mengaktifkan disk cache AlloyDB Omni untuk AlloyDB Omni

Menyediakan disk dan membuat sistem file

Untuk disk cache AlloyDB Omni, Anda membuat sistem file di satu atau beberapa disk dan memasangnya. Selain itu, Anda dapat menggunakan utilitas seperti mdadm atau lvm untuk menggabungkan kapasitas menggunakan beberapa disk dan menggunakan sistem file apa pun.

Langkah-langkah berikut menunjukkan cara menggunakan lvm dan ext4 menggunakan SSD NVMe.

  1. Buat grup volume dari semua perangkat fisik yang tersedia:

    nvme_prefix="STORAGE_PREFIX"
    nvme_list=$(ls "$nvme_prefix"*)
    sudo vgcreate VOLUME_GROUP ${nvme_list}

    Ganti kode berikut:

    • STORAGE_PREFIX: awalan jalur disk lokal target yang terpasang ke mesin virtual menggunakan antarmuka nonvolatile memory express (NVMe)—misalnya, di Google Cloud, jalur perangkat NVMe selalu dimulai dengan /dev/nvme0n.
    • VOLUME_GROUP: nama grup volume tempat SSD Anda digabungkan—misalnya, omni-disk-cache-volume.
  2. Untuk membuat volume logis dari kapasitas grup volume yang tersedia dari langkah sebelumnya, gunakan perintah berikut:

    sudo lvcreate -n LOGICAL_VOLUME -l 100%FREE VOLUME_GROUP

    Ganti LOGICAL_VOLUME dengan nama volume logis yang diperlakukan sebagai partisi oleh LVM—misalnya, omni_disk_cache_device.

  3. Buat sistem file ext4 di volume logis. Jika diperlukan, Anda dapat menentukan opsi ext4 lainnya yang tunduk pada keamanan data.
    sudo mkfs.ext4 /dev/VOLUME_GROUP/LOGICAL_VOLUME
  4. Untuk membuat direktori yang berfungsi sebagai titik pemasangan di mesin host dan memasang sistem file, gunakan perintah berikut:

    sudo mkdir /OMNI_DISK_CACHE_DIRECTORY
    sudo mount /dev/VOLUME_GROUP/LOGICAL_VOLUME /OMNI_DISK_CACHE_DIRECTORY

    Ganti OMNI_DISK_CACHE_DIRECTORY dengan nama direktori atau jalur ke direktori yang berfungsi sebagai titik pemasangan—misalnya, omni_disk_cache_directory.

Memberikan izin ke direktori disk cache

Sebelum mengaktifkan disk cache untuk AlloyDB Omni, Anda harus memberikan izin akses penuh ke direktori disk cache. Untuk memberikan izin, jalankan perintah berikut:

sudo chown postgres:postgres /OMNI_DISK_CACHE_DIRECTORY
sudo chmod -R a+rw  /OMNI_DISK_CACHE_DIRECTORY

Ganti OMNI_DISK_CACHE_DIRECTORY dengan jalur ke direktori disk cache Anda.

Mengaktifkan disk cache

Untuk mengaktifkan disk caching untuk database Anda, selesaikan langkah-langkah berikut:

  1. Hubungkan ke database Anda sebagai SUPERUSER.

    /usr/lib/postgresql/18/bin/psql -h localhost -U postgres
  2. Tetapkan flag Grand Unified Configuration (GUC) omni_disk_cache_enabled dan omni_disk_cache_directory.

    ALTER SYSTEM SET omni_disk_cache_enabled=on;
    ALTER SYSTEM SET omni_disk_cache_directory='/OMNI_DISK_CACHE_DIRECTORY';
    
  3. (Opsional) Secara default, AlloyDB Omni menggunakan semua ruang yang tersedia di sistem file. Jika diperlukan, Anda dapat mengganti setelan ini dengan memperbarui flag GUC omni_disk_cache_file_size.

    ALTER SYSTEM SET omni_disk_cache_file_size=SIZE_IN_MB;
    

    Ganti SIZE_IN_MB dengan jumlah ruang disk, dalam MB, yang ingin Anda gunakan untuk disk cache.

  4. Mulai ulang AlloyDB Omni.

    sudo systemctl restart alloydbomni18

Memverifikasi konfigurasi disk cache

Setelah mengaktifkan disk cache AlloyDB Omni, verifikasi bahwa disk cache diakses dengan memantau aktivitas baca dan tulis ke disk menggunakan utilitas yang tersedia seperti iotop atau iostat.

Selain itu, Anda dapat memeriksa apakah disk cache AlloyDB Omni terbuka.

Untuk memverifikasi konfigurasi disk cache untuk AlloyDB Omni, gunakan perintah berikut.

sudo journalctl -u alloydbomni18 | grep "opened omni disk cache"

Jika disk caching Anda dikonfigurasi dengan benar, pesan Successfully opened omni disk cache ... akan ditampilkan dalam log.

Langkah berikutnya