Les Huge Pages d'Oracle sont une fonction de gestion de la mémoire qui permet au système d'exploitation de gérer de grandes pages de mémoire, d'une taille typique de 2 Mo, par opposition aux petites pages de mémoire par défaut, d'une taille typique de 4 Ko.
En utilisant des pages de mémoire plus grandes, Huge Pages peut réduire de manière significative les frais généraux liés à la gestion de la mémoire dans les systèmes qui ont besoin de beaucoup de mémoire, tels que les bases de données Oracle.
Les bases de données Oracle sont connues pour leur forte utilisation de la mémoire en raison de la nécessité de gérer de grands ensembles de données, une indexation étendue et une mise en cache pour des performances optimales.
Dans de tels environnements, la taille de page mémoire par défaut peut devenir un goulot d'étranglement en raison du grand nombre de pages que le système d'exploitation doit gérer. C'est là que les pages énormes entrent en jeu.
Table des matières
1. Avantages de l'utilisation des pages géantes
Amélioration de la gestion de la mémoire
Les pages géantes améliorent considérablement la gestion de la mémoire en allouant des blocs de mémoire plus grands que les pages standard de 4 Ko. Dans un environnement de base de données Oracle, cela permet de réduire la fragmentation de la mémoire, d'utiliser plus efficacement la mémoire et de simplifier l'allocation de la mémoire.
Réduction du nombre de pages du tableau des frais généraux
Avec les pages énormes, le nombre de pages que le système doit gérer est considérablement réduit. Par exemple, l'utilisation de pages énormes de 2 Mo au lieu de pages standard de 4 Ko réduit le nombre de pages par un facteur de 512, ce qui se traduit par des tables de pages plus petites, une utilisation moindre de la mémoire pour la maintenance de ces tables et une amélioration des performances du système.
Amélioration des performances
L'utilisation de Huge Pages peut conduire à des améliorations significatives des performances. Parmi les avantages, citons la réduction de la latence due au traitement de blocs de données plus importants, l'augmentation du débit grâce à la réduction des frais généraux de gestion de la mémoire, l'optimisation de l'utilisation de l'unité centrale et des performances système plus stables et plus prévisibles.
2. Comprendre les pages de mémoire
Pages de mémoire standard et pages énormes
Les pages de mémoire standard ont généralement une taille de 4 Ko et nécessitent une gestion importante de la part du système d'exploitation. Les pages énormes, en revanche, ont une taille de 2 Mo, ce qui réduit le nombre de pages et les frais généraux de gestion associés.
Fonctionnement des pages volumineuses dans Oracle
Les pages énormes allouent la mémoire en blocs plus importants, qui sont directement utilisés par les processus Oracle. Cela permet de réduire les frais généraux liés à l'allocation de la mémoire et d'améliorer les temps d'accès, ce qui se traduit par une amélioration des performances globales de la base de données Oracle.
3. Configuration des pages volumineuses dans Oracle
Guide étape par étape pour configurer les Huge Pages sous Linux
- Vérification de la configuration actuelle des Huge Pages :
- Utilisez des commandes telles que
grep Huge /proc/meminfo
pour vérifier la configuration actuelle des Huge Pages.
- Utilisez des commandes telles que
- Calcul des pages énormes requises :
- Calculez la mémoire totale requise pour la base de données Oracle et divisez-la par 2 Mo pour déterminer le nombre de Huge Pages nécessaires.
- Configuration de pages volumineuses sous Linux :
- Modifier le fichier de configuration du système
/etc/sysctl.conf
pour définir le nombre de grandes pages et les paramètres connexes. - Appliquez les modifications à l'aide de commandes telles que
sysctl -p
.
- Modifier le fichier de configuration du système
- Configuration de la base de données Oracle pour l'utilisation de Huge Pages :
- Modifier les paramètres d'initialisation d'Oracle (
init.ora
oufichier sp
) pour permettre l'utilisation de grandes pages, le paramètre USE_LARGE_PAGES. - Redémarrez la base de données Oracle pour appliquer les modifications.
- Modifier les paramètres d'initialisation d'Oracle (
Prenons un exemple.
Si vous disposez d'un serveur doté de 160 Go de mémoire vive, le nombre de pages recommandé est la moitié de cette valeur, soit 80000, afin de conserver un peu d'espace pour le système d'exploitation.
Puis la moitié de cette valeur (parce que chaque page représente 2 Mo), soit 40000.
Vous devez éditer le fichier /etc/sysctl.conf en tant que root
vm.nr_hugepages=40000
Une fois la valeur définie, il est recommandé de redémarrer le serveur, mais parfois cette commande suffit.
sysctl -p
Vérifier la valeur des hugepages
grep Huge /proc/meminfo
En outre, les bases de données sur le serveur doivent avoir le paramètre USE_LARGE_PAGES=ONLY.
Voici d'autres exemples.
Pour un SGA de 1 Go, il faut 512 pages de grande taille.
Pour un SGA de 1,5 Go, il faudrait 768 pages gigantesques.
Pour un SGA de 2 Go, vous aurez besoin de 1024 grandes pages.
Pour un SGA de 5 Go, il faut 2560 pages de grande taille.
Pour une SGA de 10 Go, il faut 5120 pages de grande taille.
Pour un SGA de 15 Go, il faudrait 7680 pages de grande taille.
4. FAQ sur les pages géantes
Questions courantes et réponses
- Qu'est-ce qu'une page géante ? Les pages énormes sont des pages de mémoire de grande taille (2 Mo chacune) utilisées pour améliorer la gestion de la mémoire et les performances.
- Pourquoi utiliser Huge Pages avec Oracle ? L'utilisation de pages énormes réduit la fragmentation de la mémoire, la surcharge de la table des pages et améliore les performances de la base de données.
- Comment calculer le nombre de pages énormes nécessaires ? Calculez la mémoire totale requise pour la base de données et divisez-la par 2 Mo pour déterminer le nombre de Huge Pages.
- Que se passe-t-il si mon système ne prend pas en charge les pages géantes ? Assurez-vous que votre système répond aux conditions préalables et consultez le système d'exploitation et la documentation Oracle pour connaître les exigences spécifiques.
5. Conclusion
Résumé des avantages et de l'importance
Les Huge Pages offrent des avantages substantiels aux bases de données Oracle, notamment une meilleure gestion de la mémoire, une réduction des frais généraux et une amélioration des performances. En configurant et en utilisant les Huge Pages, les administrateurs de bases de données peuvent obtenir des opérations de bases de données Oracle plus efficaces et plus stables.
Recommandations finales
Pour maximiser les avantages, calculez soigneusement les pages énormes nécessaires, suivez les meilleures pratiques pour la configuration et surveillez les performances du système afin de procéder aux ajustements nécessaires.
6. Ressources complémentaires
Lectures complémentaires et références
Si vous disposez d'un serveur doté de 160 Go de mémoire vive, le nombre de pages recommandé est la moitié de cette valeur, soit 80000, afin de conserver un peu d'espace pour le système d'exploitation.
C'est 40000, n'est-ce pas ?
160G/2=80G
80G*1024/2M ==40000
Oui, c'est exact !
J'ai corrigé mon erreur 🙂 .