Activation de HugePages pour une instance RDS for Oracle - Amazon Relational Database Service

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.

Activation de HugePages pour une instance RDS for Oracle

Amazon RDS for Oracle prend en charge la fonctionnalité HugePages du noyau Linux pour obtenir une base de données plus évolutive. HugePages réduit la taille des tables de page et le temps UC de gestion de la mémoire, ce qui augmente les performances des instances de bases de données volumineuses. Pour plus d'informations, consultez Overview of HugePages (Présentation des grandes pages) dans la documentation Oracle.

Vous pouvez utiliser HugePages avec toutes les versions et éditions de RDS for Oracle prises en charge.

Le paramètre use_large_pages contrôle si HugePages est activé pour une instance de base de données. Les valeurs possibles pour ce paramètre sont ONLY, FALSE et {DBInstanceClassHugePagesDefault}. Le paramètre use_large_pages est défini sur {DBInstanceClassHugePagesDefault} dans le groupe de paramètres DB par défaut pour Oracle.

Pour contrôler si HugePages est activé automatiquement pour une instance de base de données, vous pouvez utiliser la variable de formule DBInstanceClassHugePagesDefault dans les groupes de paramètres. La valeur est déterminée comme suit :

  • Pour les classes d'instance de base de données indiquées dans le tableau suivant, DBInstanceClassHugePagesDefault a toujours la valeur FALSE par défaut, et use_large_pages a la valeur FALSE. Vous pouvez activer HugePages manuellement pour ces instances de base de données si la classe d'instance de bases de données dispose d'au moins 14 Gio de mémoire.

  • Pour les classes d'instance de base de données non mentionnées dans le tableau suivant, si la classe d'instance de base de données possède au moins 14 Gio de mémoire, DBInstanceClassHugePagesDefault a toujours la valeur FALSE. En outre, use_large_pages a la valeur FALSE.

  • Pour les classes d'instance de base de données non mentionnées dans le tableau suivant, si la classe d'instance possède au moins 14 Gio de mémoire et moins de 100 Gio de mémoire, DBInstanceClassHugePagesDefault a la valeur TRUE par défaut. En outre, use_large_pages a la valeur ONLY. Vous pouvez désactiver HugePages manuellement en définissant use_large_pages sur FALSE.

  • Pour les classes d'instance de base de données non mentionnées dans le tableau suivant, si la classe d'instance possède au moins 100 Gio de mémoire, DBInstanceClassHugePagesDefault a toujours la valeur TRUE. En outre, use_large_pages a la valeur ONLY et HugePages ne peut pas être désactivé.

HugePages n'est pas activé par défaut pour les classes d'instance de base de données suivantes.

Famille de classes d'instance de base de données Classes d'instance de base de données avec HugePages non activé par défaut

db.m5

db.m5.large

db.m4

db.m4.large, db.m4.xlarge, db.m4.2xlarge, db.m4.4xlarge, db.m4.10xlarge

db.t3

db.t3.micro, db.t3.small, db.t3.medium, db.t3.large

Pour plus d'informations sur les classes d'instance DB, consultez Spécifications matérielles pour les classes d'instance de base de données .

Pour activer manuellement HugePages pour des instances de bases de données nouvelles ou existantes, définissez le paramètre use_large_pages sur ONLY. Vous ne pouvez pas utiliser HugePages avec Oracle Automatic Memory Management (AMM). Si vous définissez le paramètre use_large_pages sur ONLY, vous devez aussi définir memory_target et memory_max_target sur 0. Pour plus d'informations sur la définition des paramètres de votre instance de base de données, consultez Utilisation des groupes de paramètres.

Vous pouvez aussi définir les paramètres sga_target, sga_max_size et pga_aggregate_target. Lorsque vous définissez les paramètres de mémoire des zones SGA (System Global Area) et PGA (Program Global Area), ajoutez les valeurs ensemble. Soustrayez ce total de votre mémoire d'instance disponible (DBInstanceClassMemory) pour déterminer l'espace mémoire libre restant au-delà de l'attribution par HugePages. Vous devez conserver une mémoire libre d'au moins 2 Gio ou égale à 10 pourcent de la mémoire totale disponible de l'instance, la plus petite des deux valeurs étant retenue.

Après avoir configuré vos paramètres, vous devez redémarrer votre instance de base de données pour que les modifications soient effectives. Pour plus d'informations, consultez Redémarrage d'une instance de base de données.

Note

L'instance de base de données Oracle diffère les modifications apportées aux paramètres d'initialisation liés à la SGA jusqu'à ce que vous redémarriez l'instance sans basculement. Dans la console Amazon RDS, choisissez Redémarrer, mais ne choisissez pas Redémarrer avec basculement. Dans la AWS CLI, appelez la commande reboot-db-instance avec le paramètre --no-force-failover. L'instance de base de données ne traite pas les paramètres liés à la SGA pendant le basculement ou lors d'autres opérations de maintenance qui provoquent le redémarrage de l'instance.

Voici un exemple de configuration de paramètres pour HugePages activant manuellement HugePages. Vous devez définir les valeurs qui répondent à vos besoins.

memory_target = 0 memory_max_target = 0 pga_aggregate_target = {DBInstanceClassMemory*1/8} sga_target = {DBInstanceClassMemory*3/4} sga_max_size = {DBInstanceClassMemory*3/4} use_large_pages = ONLY

Supposons que les valeurs des paramètres suivantes sont définies dans un groupe de paramètres.

memory_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) memory_max_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) pga_aggregate_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0) sga_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) sga_max_size = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) use_large_pages = {DBInstanceClassHugePagesDefault}

Le groupe de paramètres est utilisé par une classe d'instance de base de données db.r4 dotée de moins de 100 Gio de mémoire. Avec ces paramètres et use_large_pages défini sur {DBInstanceClassHugePagesDefault}, HugePages est activé sur l'instance db.r4.

Supposons que les valeurs des paramètres suivantes sont définies dans un groupe de paramètres.

memory_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) memory_max_target = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4}) pga_aggregate_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0) sga_target = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) sga_max_size = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0) use_large_pages = FALSE

Le groupe de paramètres est utilisé par une classe d'instance de base de données db.r4 et une classe d'instance de base de données db.r5, toutes deux avec plus de 100 Gio de mémoire. Avec ces paramètres, HugePages est désactivé sur les instances db.r4 et db.r5.

Note

Si ce groupe de paramètres est utilisé par une classe d'instance de base de données db.r4 ou db.r5 avec au moins 100 Gio de mémoire, la valeur de FALSE pour use_large_pages est remplacée et définie sur ONLY. Dans ce cas, une notification concernant le remplacement est envoyée au client.

Lorsque HugePages est activé sur votre instance de base de données, vous pouvez afficher les informations sur HugePages en activant la surveillance améliorée. Pour de plus amples informations, veuillez consulter Surveillance des métriques du système d'exploitation à l'aide de la Surveillance améliorée.