Accelera le prestazioni del database utilizzando la cache del disco

Seleziona una versione della documentazione:

Questa pagina descrive come eseguire il provisioning, configurare e utilizzare la memorizzazione nella cache del disco su AlloyDB Omni per aumentare le prestazioni dell'installazione di AlloyDB Omni.

Oltre ai buffer condivisi in memoria di PostgreSQL standard, la cache del disco di AlloyDB Omni consente di archiviare i buffer su spazio di archiviazione 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.

Abilitare la cache del disco di AlloyDB Omni

Per abilitare la cache del disco, consulta la sezione seguente:

Abilitare la cache del disco su un volume locale

Se vuoi utilizzare un volume locale, non devi creare un volume permanente. Puoi utilizzare la seguente ottimizzazione.

Per abilitare la cache del disco su un volume locale per il database:

  1. Modifica il manifest del cluster di database per aggiungere l'attributo ultraFastCache alla sezione features della sezione spec:

    DBCluster:
      metadata:
        name: CLUSTER_NAME
      spec:
        databaseVersion: "18.3.0"
        primarySpec:
          features:
            ultraFastCache:
              cacheSize: DISK_CACHE_SIZE
              localVolume:
                path: "LOCAL_VOLUME_PATH"
    ...
      

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del cluster di database.
    • DISK_CACHE_SIZE: la dimensione della cache, ad esempio 100Gi. Deve essere maggiore di shared_buffers. Questo campo è facoltativo. Se non specifichi il valore di questo campo, AlloyDB Omni utilizza tutto lo spazio rimanente sul disco.
    • LOCAL_VOLUME_PATH: il percorso del volume locale, ad esempio /mnt/disks/raid/0.

  2. Riapplica il manifest.

  3. Applica le modifiche utilizzando l'interfaccia dell'orchestratore che preferisci:

    Ansible

    Se gestisci direttamente l'infrastruttura dell'orchestratore RPM di AlloyDB Omni utilizzando Ansible, questo attiva gli aggiornamenti eseguendo il playbook appropriato e passando l'update_action selezionato come variabile extra.

    File di esempio per update.yml:

    ---
    - hosts: localhost
      vars:
        update_action: "update_resource_spec"
        ansible_user: your_ssh_user
        ansible_ssh_private_key_file: ~/path/to/private-key
      roles:
        - role: google.alloydbomni_orchestrator.update
    

    Esegui il comando Ansible:

    ansible-playbook -i DEPLOYMENT_SPECIFICATION update.yml -e resource_spec="DBCLUSTER_SPECIFICATION"

    Sostituisci le seguenti variabili:

    alloydbctl

    alloydbctl apply -d DEPLOYMENT_SPECIFICATION -r DBCLUSTER_SPECIFICATION

    Sostituisci le seguenti variabili:

Verificare la configurazione della cache del disco

Dopo aver abilitato la cache del disco di AlloyDB Omni, verifica che la cache del disco sia accessibile monitorando l'attività di lettura e scrittura sui dischi utilizzando le utilità disponibili come iotop o iostat.

Inoltre, puoi verificare se la cache del disco di AlloyDB Omni è aperta.

Per verificare la configurazione della cache del disco per AlloyDB Omni, utilizza il comando seguente.

cat LOG_FILE_PATH | grep "opened omni disk cache"

Sostituisci LOG_FILE_PATH con il percorso in cui vengono reindirizzati i log di AlloyDB Omni.

Se la memorizzazione nella cache del disco è configurata correttamente, nei log viene visualizzato il messaggio Successfully opened omni disk cache ....

Passaggi successivi

* Informazioni sui dischi SSD locali * Creare e avviare un'istanza VM