Zusätzlich zu den standardmäßigen gemeinsam genutzten In-Memory-Puffern von PostgreSQL ermöglicht der AlloyDB Omni-Festplatten-Cache das Speichern von Puffern auf schnellen Speichermedien wie Solid-State-Laufwerken (SSDs). Durch das Zwischenspeichern auf dem Laufwerk wird der Datenabruf in AlloyDB Omni-Installationen mit Datenverzeichnissen auf langsameren Speichermedien beschleunigt.
Wie die freigegebenen Puffer von PostgreSQL ist der AlloyDB Omni-Laufwerk-Cache nicht persistent. Das bedeutet, dass die im Cache gespeicherten Daten beim Neustart verloren gehen.
Standardmäßig verwendet der AlloyDB Omni-Laufwerks-Cache den gesamten vom Dateisystem gemeldeten Speicher. Mit dem Parameter omni_disk_cache_file_size können Sie die Menge an Speicherplatz definieren, die für das Zwischenspeichern von Daten reserviert ist.
AlloyDB Omni-Datenträger-Cache aktivieren
Informationen zum Aktivieren des Datenträger-Caches finden Sie im folgenden Abschnitt:
Datenträger-Cache auf einem lokalen Volume aktivieren
Wenn Sie ein lokales Volume verwenden möchten, müssen Sie kein nichtflüchtiges Volume erstellen. Stattdessen können Sie die folgende Optimierung verwenden.
So aktivieren Sie den Datenträger-Cache auf einem lokalen Volume für Ihre Datenbank:
Ändern Sie das Manifest Ihres Datenbankclusters, um dem Abschnitt
featuresdes Abschnittsspecdas AttributultraFastCachehinzuzufügen:DBCluster: metadata: name: CLUSTER_NAME spec: databaseVersion: "18.3.0" primarySpec: features: ultraFastCache: cacheSize: DISK_CACHE_SIZE localVolume: path: "LOCAL_VOLUME_PATH" ...
Ersetzen Sie Folgendes:
CLUSTER_NAME: der Name Ihres Datenbankclusters.DISK_CACHE_SIZE: die Größe des Caches, z. B.100Gi. Er muss größer alsshared_bufferssein. Dieses Feld ist optional. Wenn Sie den Wert dieses Felds nicht angeben, verwendet AlloyDB Omni den gesamten verbleibenden Speicherplatz auf dem Laufwerk.LOCAL_VOLUME_PATH: der Pfad zum lokalen Volume, z. B./mnt/disks/raid/0.
Wenden Sie das Manifest noch einmal an.
Wenden Sie die Änderungen mit der Orchestrator-Oberfläche Ihrer Wahl an:
Ansible
Wenn Sie Ihre AlloyDB Omni-RPM-Orchestrator-Infrastruktur direkt mit Ansible verwalten, werden Updates ausgelöst, indem das entsprechende Playbook ausgeführt und die ausgewählte
update_actionals zusätzliche Variable übergeben wird.Beispieldatei für
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.updateFühren Sie den Ansible-Befehl aus:
ansible-playbook -i DEPLOYMENT_SPECIFICATION update.yml -e resource_spec="DBCLUSTER_SPECIFICATION"Ersetzen Sie die folgenden Variablen:
DEPLOYMENT_SPECIFICATION: Pfad zur Bereitstellungsspezifikation, die Sie unter AlloyDB Omni-Komponenten installieren erstellt haben.DBCLUSTER_SPECIFICATION: Pfad zur Clusterspezifikation.
alloydbctlalloydbctl apply -d DEPLOYMENT_SPECIFICATION -r DBCLUSTER_SPECIFICATIONErsetzen Sie die folgenden Variablen:
DEPLOYMENT_SPECIFICATION: Pfad zur Bereitstellungsspezifikation, die Sie unter AlloyDB Omni-Komponenten installieren erstellt haben.DBCLUSTER_SPECIFICATION: Pfad zur Clusterspezifikation.
Datenträger-Cache-Konfiguration prüfen
Nachdem Sie den AlloyDB Omni-Laufwerks-Cache aktiviert haben, prüfen Sie, ob auf den Laufwerks-Cache zugegriffen wird. Dazu überwachen Sie die Lese- und Schreibaktivität auf den Laufwerken mit verfügbaren Dienstprogrammen wie iotop oder iostat.
Außerdem können Sie prüfen, ob der AlloyDB Omni-Datenträger-Cache geöffnet ist.
Verwenden Sie den folgenden Befehl, um die Konfiguration des Datenträger-Caches für AlloyDB Omni zu prüfen.
cat LOG_FILE_PATH | grep "opened omni disk cache"Ersetzen Sie LOG_FILE_PATH durch den Pfad, zu dem AlloyDB Omni-Logs umgeleitet werden.
Wenn das Laufwerk-Caching richtig konfiguriert ist, wird in den Logs die Meldung Successfully opened omni disk cache ... angezeigt.