Oltre ai buffer condivisi in memoria PostgreSQL standard, la cache su disco di AlloyDB Omni consente di archiviare i buffer su un archivio veloce come le unità a stato solido (SSD). La memorizzazione nella cache del disco accelera il recupero dei dati nelle installazioni di AlloyDB Omni con directory di dati situate su uno spazio di archiviazione più lento.
Come i buffer condivisi di PostgreSQL, la cache del disco di AlloyDB Omni non è persistente, il che significa che i dati memorizzati nella cache vengono persi al riavvio.
Per impostazione predefinita, la cache del disco di AlloyDB Omni utilizza tutto lo spazio di archiviazione segnalato dal file system. Puoi definire la quantità di spazio di archiviazione riservato alla memorizzazione nella cache dei dati utilizzando il parametro omni_disk_cache_file_size.
Attiva la cache del disco di AlloyDB Omni
Per attivare la cache del disco, completa tutte le seguenti sottosezioni:
- Provisioning dei dischi e creazione di un file system
- Attivare la cache del disco di AlloyDB Omni per AlloyDB Omni
Esegui il provisioning dei dischi e crea un file system
Per la cache del disco AlloyDB Omni, crea un file system su uno o più dischi e montalo. Inoltre, puoi utilizzare utilità come mdadm o lvm per raggruppare la capacità utilizzando più dischi e qualsiasi file system.
I passaggi seguenti mostrano l'utilizzo di lvm e ext4 con SSD NVMe.
Crea un gruppo di volumi da tutti i dispositivi fisici disponibili:
nvme_prefix="STORAGE_PREFIX" nvme_list=$(ls "$nvme_prefix"*) sudo vgcreate VOLUME_GROUP ${nvme_list}
Sostituisci quanto segue:
STORAGE_PREFIX: il prefisso del percorso dei dischi locali di destinazione collegati a una macchina virtuale utilizzando l'interfaccia NVMe (Nonvolatile Memory Express). Ad esempio, su Google Cloud, i percorsi dei dispositivi NVMe iniziano sempre con/dev/nvme0n.VOLUME_GROUP: il nome di un gruppo di volumi in cui sono combinate le unità SSD, ad esempioomni-disk-cache-volume.
-
Per creare un volume logico dalla capacità libera del gruppo di volumi del passaggio precedente, utilizza il seguente comando:
sudo lvcreate -n LOGICAL_VOLUME -l 100%FREE VOLUME_GROUP
Sostituisci
LOGICAL_VOLUMEcon il nome di un volume logico trattato come partizione da LVM, ad esempioomni_disk_cache_device. - Crea il file system
ext4sul volume logico. Se necessario, puoi specificare altre opzioni diext4soggette alla sicurezza dei dati.sudo mkfs.ext4 /dev/VOLUME_GROUP/LOGICAL_VOLUME
Per creare una directory che funga da punto di montaggio sulla macchina host e montare il file system, utilizza il seguente comando:
sudo mkdir /OMNI_DISK_CACHE_DIRECTORY sudo mount /dev/VOLUME_GROUP/LOGICAL_VOLUME /OMNI_DISK_CACHE_DIRECTORY
Sostituisci
OMNI_DISK_CACHE_DIRECTORYcon il nome della directory o un percorso alla directory che funge da punto di montaggio, ad esempioomni_disk_cache_directory.
Concedi le autorizzazioni alla directory della cache del disco
Prima di attivare la cache del disco per AlloyDB Omni, devi concedere le autorizzazioni di accesso completo alla directory della cache del disco. Per concedere le autorizzazioni, esegui i seguenti comandi:
sudo chown postgres:postgres /OMNI_DISK_CACHE_DIRECTORYsudo chmod -R a+rw /OMNI_DISK_CACHE_DIRECTORY
Sostituisci OMNI_DISK_CACHE_DIRECTORY
con il percorso della directory della cache del disco.
Abilitare la cache del disco
Per attivare la memorizzazione nella cache del disco per il database:
Connettiti al tuo database come
SUPERUSER./usr/lib/postgresql/18/bin/psql -h localhost -U postgresImposta i flag
omni_disk_cache_enabledeomni_disk_cache_directoryGrand Unified Configuration (GUC).ALTER SYSTEM SET omni_disk_cache_enabled=on; ALTER SYSTEM SET omni_disk_cache_directory='/OMNI_DISK_CACHE_DIRECTORY';(Facoltativo) Per impostazione predefinita, AlloyDB Omni utilizza tutto lo spazio disponibile nel file system. Se necessario, puoi ignorare questa impostazione aggiornando il flag
omni_disk_cache_file_sizeGUC.ALTER SYSTEM SET omni_disk_cache_file_size=SIZE_IN_MB;Sostituisci
SIZE_IN_MBcon la quantità di spazio su disco, in MB, che vuoi che la cache del disco utilizzi.Riavvia AlloyDB Omni.
sudo systemctl restart alloydbomni18
Verifica la configurazione della cache del disco
Dopo aver abilitato la cache del disco di AlloyDB Omni, verifica che la cache del disco venga accessibile monitorando l'attività di lettura e scrittura sui dischi utilizzando le utilità disponibili come iotop o iostat.
Inoltre, puoi controllare se la cache del disco di AlloyDB Omni è aperta.
Per verificare la configurazione della cache del disco per AlloyDB Omni, utilizza il comando seguente.
sudo journalctl -u alloydbomni18 | grep "opened omni disk cache"Se la memorizzazione nella cache su disco è configurata correttamente, nei log viene visualizzato il messaggio Successfully opened omni disk cache ....
Passaggi successivi
- Informazioni sulla gestione automatica della memoria
- Informazioni sui dischi SSD locali
- Creazione e avvio di un'istanza VM