Mempercepat performa database menggunakan cache disk

Pilih versi dokumentasi:

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

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

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

Secara default, cache disk 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 cache disk AlloyDB Omni

Untuk mengaktifkan cache disk, selesaikan semua subbagian berikut:

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

Menyediakan disk dan membuat sistem file

Untuk cache disk 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 cache disk

Sebelum mengaktifkan cache disk untuk AlloyDB Omni, Anda harus memberikan izin akses penuh ke direktori cache disk. 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 cache disk Anda.

Mengaktifkan cache disk

Untuk mengaktifkan cache disk 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 cache disk.

  4. Mulai ulang AlloyDB Omni.

    sudo systemctl restart alloydbomni18

Memverifikasi konfigurasi cache disk

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

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

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

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

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

Langkah berikutnya