Datenbankleistung mit dem Datenträger-Cache beschleunigen

Wählen Sie eine Dokumentationsversion aus:

Auf dieser Seite wird beschrieben, wie Sie das Laufwerk-Caching in AlloyDB Omni bereitstellen, einrichten und verwenden, um die Leistung Ihrer AlloyDB Omni-Installation zu steigern.

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:

  1. Ändern Sie das Manifest Ihres Datenbankclusters, um das Attribut ultraFastCache dem Abschnitt features des Abschnitts spec hinzuzufü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 als shared_buffers sein. 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.

  2. Wenden Sie das Manifest noch einmal an.

  3. 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_action als 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.update
    

    Fü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.

    alloydbctl

    alloydbctl apply -d DEPLOYMENT_SPECIFICATION -r 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.

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.

Nächste Schritte

* Lokale SSDs * VM-Instanz erstellen und starten