Les systèmes de gestion de base de données implémentent leur propre journalisation via les journaux de base de données, donc l'installation d'un tel SGBD sur un système de fichiers journalisé dégrade les performances via deux mécanismes:
La journalisation redondante augmente la quantité d'activité du disque
La disposition du disque physique peut être fragmentée (bien que certains systèmes de fichiers de journalisation aient des mécanismes pour nettoyer cela).
De nombreuses activités sur le disque peuvent remplir le journal, provoquant de fausses conditions de «disque plein».
Il y a quelques années, j'ai vu une instance où cela a été fait sur le système de fichiers LFS sur une installation Baan sur une boîte HP / UX. Le système avait des problèmes persistants de performances et de corruption de données qui n'ont pas été diagnostiqués jusqu'à ce que quelqu'un comprenne que les systèmes de fichiers étaient formatés avec LFS.
Les volumes contenant des fichiers de base de données auront normalement un petit nombre de fichiers volumineux. Les serveurs SGBD auront normalement un paramètre qui configure le nombre de blocs lus dans une seule E / S. Des nombres plus petits seraient appropriés pour les systèmes de traitement de transactions à volume élevé car ils minimiseraient la mise en cache des données redondantes. De plus grands nombres seraient appropriés pour des systèmes tels que les entrepôts de données qui effectuaient beaucoup de lectures séquentielles. Si possible, réglez la taille du bloc d'allocation de votre système de fichiers pour qu'elle soit identique à la lecture multi-bloc sur laquelle le SGBD est défini.
Certains systèmes de gestion de base de données peuvent fonctionner sur des partitions de disque brutes. Cela donne divers degrés de gain de performances, généralement moins sur un système moderne avec beaucoup de mémoire. Sur les systèmes plus anciens disposant de moins d'espace pour mettre en cache les métadonnées du système de fichiers, les économies d'E / S disque étaient assez importantes. Les partitions brutes rendent le système plus difficile à gérer, mais offrent les meilleures performances disponibles.
Les volumes RAID-5 entraînent plus de surcharge d'écriture que les volumes RAID-10, donc une base de données occupée avec beaucoup de trafic d'écriture fonctionnera mieux (souvent beaucoup mieux) sur un RAID-10. Les journaux doivent être placés des volumes de disque physiquement séparés dans les données. Si votre base de données est volumineuse et principalement en lecture seule (par exemple, un entrepôt de données), il peut être judicieux de la placer sur des volumes RAID-5 si cela ne ralentit pas indûment le processus de chargement.
La mise en cache en écriture différée sur un contrôleur peut vous permettre de gagner en performances au détriment de la création de certains modes de défaillance (raisonnablement improbables mais possibles) où les données pourraient être corrompues. La plus grande victoire en termes de performances est liée aux charges d'accès hautement aléatoires. Si vous souhaitez le faire, envisagez de placer les journaux sur un contrôleur distinct et de désactiver la mise en cache en écriture différée sur les volumes de journaux. Les journaux auront alors une meilleure intégrité des données et une seule défaillance ne peut pas supprimer à la fois le volume du journal et des données. Cela vous permet de restaurer à partir d'une sauvegarde et d'effectuer une restauration à partir des journaux.