Gestion de mémoire améliorée dans Aurora PostgreSQL - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion de mémoire améliorée dans Aurora PostgreSQL

Les charges de travail des clients épuisant la mémoire disponible dans l'instance de base de données entraînent le redémarrage de la base de données par le système d'exploitation, ce qui entraîne l'indisponibilité de la base de données. Aurora PostgreSQL a introduit des capacités de gestion de mémoire améliorées qui empêchent de manière proactive les problèmes de stabilité et les redémarrages de base de données provoqués par un manque de mémoire disponible. Cette amélioration est disponible par défaut dans les versions suivantes :

  • Version 15.3 et versions 15 ultérieures

  • Version 14.8 et versions 14 ultérieures

  • Version 13.11 et versions 13 ultérieures

  • Version 12.15 et versions 12 ultérieures

  • Version 11.20 et versions 11 ultérieures

Pour améliorer la gestion de la mémoire, les opérations suivantes sont effectuées :

  • Annulation des transactions de base de données qui demandent plus de mémoire quand le système approche d'une sollicitation critique de la mémoire.

  • Le système est considéré soumis à une sollicitation critique de la mémoire lorsqu'il épuise toute la mémoire physique et qu'il est sur le point d'épuiser l'échange. Dans ces circonstances, toute transaction demandant de la mémoire sera annulée afin de réduire immédiatement la sollicitation de la mémoire dans l'instance de base de données.

  • Les lanceurs PostgreSQL essentiels et les exécutants en arrière-plan tels que les threads de travail Autovacuum sont toujours protégés.

Configuration des paramètres de gestion de la mémoire

Pour activer la gestion de la mémoire

Cette fonction est désactivée par défaut. Un message d'erreur s'affiche quand une transaction est annulée en raison d'une mémoire insuffisante, comme illustré dans l'exemple suivant :

ERROR: out of memory Detail: Failed on request of size 16777216.
Pour désactiver la gestion de la mémoire

Pour désactiver cette fonctionnalité, connectez-vous au cluster de base de données Aurora PostgreSQL avec psql et utilisez l'instruction SET pour les valeurs des paramètres, comme indiqué ci-dessous.

Pour les versions 11.21, 12.16, 13.12, 14.9, 15.4 et antérieures d'Aurora PostgreSQL :

postgres=>SET rds.memory_allocation_guard = true;

La valeur par défaut du rds.memory_allocation_guard paramètre est définie false dans le groupe de paramètres.

Pour Aurora PostgreSQL 12.17, 13.13, 14.10, 15.5 et versions supérieures :

postgres=>rds.enable_memory_management = false;

La valeur par défaut du rds.enable_memory_management paramètre est définie true dans le groupe de paramètres.

La définition des valeurs de ces paramètres dans le groupe de paramètres du cluster de base de données empêche l'annulation des requêtes. Pour plus d'informations sur le groupe de paramètres du cluster de base de données, consultezGroupes de paramètres pour Amazon Aurora.

La valeur de ces paramètres dynamiques peut également être définie au niveau de la session pour inclure ou exclure une session dans le cadre d'une gestion améliorée de la mémoire.

Note

Nous ne recommandons pas de désactiver cette fonctionnalité car elle pourrait entraîner une out-of-memory erreur susceptible de provoquer le redémarrage de la base de données en raison de l'épuisement de la mémoire du système.