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 gemeinsamen Zwischenspeicher von PostgreSQL ist der AlloyDB Omni-Datenträger-Cache nicht persistent. Das bedeutet, dass die im Cache gespeicherten Daten beim Neustart verloren gehen.
Standardmäßig verwendet der AlloyDB Omni-Datenträger-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-Cache 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 PersistentVolume erstellen. Sie können stattdessen 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 das Attribut
ultraFastCachedem Abschnittfeaturesdes Abschnittsspechinzuzufügen:DBCluster: metadata: name: CLUSTER_NAME spec: databaseVersion: "18.4.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 Cache, z. B.100Gi. Es 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 über die gewünschte Orchestrator-Schnittstelle 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.
Laufwerk-Cache-Konfiguration prüfen
Nachdem Sie den AlloyDB Omni-Datenträger-Cache aktiviert haben, prüfen Sie, ob auf den Datenträger-Cache zugegriffen wird. Dazu überwachen Sie die Lese- und Schreibaktivität auf den Datenträgern 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, an den AlloyDB Omni-Logs weitergeleitet werden.
Wenn Ihr Datenträger-Caching richtig konfiguriert ist, wird die Meldung Successfully opened omni disk cache ... in den Protokollen angezeigt.