Accélérer les performances de la base de données à l'aide du cache de disque

Sélectionnez une version de la documentation :

Cette page explique comment provisionner, configurer et utiliser la mise en cache du disque sur AlloyDB Omni pour améliorer les performances de votre installation AlloyDB Omni.

En plus des tampons partagés en mémoire PostgreSQL standards, le cache du disque AlloyDB Omni permet de stocker des tampons sur une solution de stockage rapide, comme des disques durs SSD (Solid-State Drives). La mise en cache de disque accélère la récupération des données dans les installations AlloyDB Omni dont les répertoires de données sont situés sur un stockage plus lent.

Comme les tampons partagés PostgreSQL, le cache de disque AlloyDB Omni n'est pas persistant, ce qui signifie que les données mises en cache sont perdues en cas de redémarrage.

Par défaut, le cache de disque AlloyDB Omni utilise tout l'espace de stockage indiqué par le système de fichiers. Vous pouvez définir la quantité de stockage réservée à la mise en cache des données à l'aide du paramètre omni_disk_cache_file_size.

Activer le cache du disque AlloyDB Omni

Pour activer le cache du disque, consultez la section suivante :

Activer le cache du disque sur un volume local

Si vous souhaitez utiliser un volume local, vous n'avez pas besoin de créer un volume persistant. Vous pouvez utiliser l'optimisation suivante à la place.

Pour activer le cache du disque sur un volume local pour votre base de données, procédez comme suit :

  1. Modifiez le fichier manifeste de votre cluster de bases de données pour ajouter l'attribut ultraFastCache à la section features de la section spec :

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

    Remplacez les éléments suivants :

    • CLUSTER_NAME : nom de votre cluster de bases de données.
    • DISK_CACHE_SIZE : taille du cache, par exemple, 100Gi. Il doit être supérieur à shared_buffers. Ce champ est facultatif. Si vous ne spécifiez pas la valeur de ce champ, AlloyDB Omni utilise tout l'espace restant sur le disque.
    • LOCAL_VOLUME_PATH : chemin d'accès au volume local, par exemple, /mnt/disks/raid/0.

  2. Appliquez à nouveau le fichier manifeste.

  3. Appliquez les modifications à l'aide de l'interface de l'orchestrateur de votre choix :

    Ansible

    Si vous gérez directement votre infrastructure d'orchestrateur RPM AlloyDB Omni à l'aide d'Ansible, cela déclenche des mises à jour en exécutant le playbook approprié et en transmettant l'update_action sélectionné en tant que variable supplémentaire.

    Exemple de fichier pour 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
    

    Exécutez la commande Ansible :

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

    Remplacez les variables suivantes :

    • DEPLOYMENT_SPECIFICATION: chemin d'accès à la spécification de déploiement que vous avez créée dans Installer les composants AlloyDB Omni.

    • DBCLUSTER_SPECIFICATION: chemin d'accès à la spécification de votre cluster.

    alloydbctl

    alloydbctl apply -d DEPLOYMENT_SPECIFICATION -r DBCLUSTER_SPECIFICATION

    Remplacez les variables suivantes :

    • DEPLOYMENT_SPECIFICATION: chemin d'accès à la spécification de déploiement que vous avez créée dans Installer les composants AlloyDB Omni.

    • DBCLUSTER_SPECIFICATION: chemin d'accès à la spécification de votre cluster.

Vérifier la configuration du cache du disque

Après avoir activé le cache de disque AlloyDB Omni, surveillez l'activité de lecture et d'écriture sur les disques à l'aide d'utilitaires disponibles tels que iotop ou iostat pour vous assurer que le cache de disque est bien accessible.

Vous pouvez également vérifier si le cache du disque AlloyDB Omni est ouvert.

Pour vérifier la configuration du cache de disque pour AlloyDB Omni, utilisez la commande suivante.

cat LOG_FILE_PATH | grep "opened omni disk cache"

Remplacez LOG_FILE_PATH par le chemin d'accès vers lequel les journaux AlloyDB Omni sont redirigés.

Si la mise en cache de disque est correctement configurée, le message Successfully opened omni disk cache ... s'affiche dans les journaux.

Étape suivante

* À propos des disques SSD locaux * Créer et démarrer une instance de VM