> Tech > 2.8 – Répartition des fichiers

2.8 – Répartition des fichiers

Tech - Par iTPro - Publié le 24 juin 2010
email

Nous avons déjà commencé à parler de la répartition des fichiers et des données sur différents disques. Voyons cela plus en détail et notamment sous l’angle des mécanismes de redondance de type RAID… Vous le savez sans doute un élément essentiel de la sécurité des données est la redondance. Celle

2.8 – Répartition des fichiers

introduite par un système RAID (Originellement Redundant Arrays of Inexpensive Disks, puis modifié en Redundant Arrays of Independant Disks) est indispensable à une bonne tolérance de panne afin que la base de données puisse continuer son exploitation en cas de perte d’un disque (2ème cause de panne après celle de l’alimentation des serveurs).

Pour autant, les systèmes RAID ne permettent pas toujours les mêmes performances qu’un simple disque13. Voici un tableau comparant les différents niveaux de RAID à un disque unique, Voir Tableau 1 : Niveau Lecture Écriture de RAID 0 plus rapide plus rapide 1 plus rapide identique 5 un peu moins rapide moins rapide 10 ou 01 rapide plus rapide Le RAID 5 est un compromis entre redondance et coût. Il constitue un bon point d’entrée pour SQL Server. Néanmoins, on peut améliorer la chose de la manière suivante :

– placer les fichiers du journal (plus fréquemment écrit) sur un RAID 1 – placer tous les fichiers (données et journal) sur un RAID 1 – placer les fichiers du journal sur un RAID 10 (ou 0+1) et les fichiers de données sur du RAID 5 ou 1.
– placer tous les fichiers (données et journal) sur un RAID 10 Tout ceci doit se faire avec des considérations d’estimation du volume à stocker et du coût du sous système disque. Si l’on conçoit en outre qu’il est nécessaire pour des raisons de récupération en cas de défaillance grave, de séparer sur des agrégats14 RAID différents, les fichiers de données des fichiers du journal, alors le sous système disque doit comprendre au moins deux agrégats soit au minimum 4 disques. Bien entendu, ce qui est applicable aux fichiers de la base de données est aussi intéressant à appliquer sur les différents fichiers fortement sollicités par le serveur SQL et l’OS.

On pourra par exemple placer sur un agrégat RAID spécifique les éléments suivants :
– fichiers de l’OS et exécutables (SQL Server et autres services associés), hormis fichier de pagination pagefile.sys
– fichier de pagination pagefile.sys – fichiers de la base de données tempdb On gagnera encore plus pour les très grandes bases à utiliser plusieurs agrégats pour les fichiers de données voire aussi pour le journal. Dans ce cas, il faudra choisir entre performances à la mise à jour (écriture) ou à la lecture.

Si l’on veut de la performance en écriture, il suffit de disposer de plusieurs fichiers sur plusieurs agrégats pour les données comme pour le journal sans rien spécifier de particulier au niveau de la base. En revanche, si l’on veut des performances en lecture, il est intéressant de séparer les index des données brutes, voire même d’isoler certaines tables ou de les partitionner15 sur des agrégats spécifiques. Notez que les modes d’écriture des fichiers de données et des fichiers du journal sont fondamentalement différents. Autant l’écriture dans un fichier de données peut se faire à un emplacement fréquemment aléatoire et finalement peu fréquent, autant le journal est écrit en fin de fichier de manière séquentielle (write ahead), pour un volume assez fort et assez fréquent.

C’est pourquoi, il est fréquent de placer les données et le journal sur des modes RAID différents. Dans tous les cas, bannissez l’utilisation de systèmes RAID logiciels. Ces derniers diminuent singulièrement les performances et reportent la criticité globale du système sur le soft. N’hésitez pas à utiliser différents contrôleurs RAID si votre base est grande. Chacun des contrôleurs indépendants apportera une solution de sécurité supplémentaire par sa redondance. Règle n°8 : choisissez le bon niveau de RAID et répartissez les fichiers de données, comme ceux du journal sur différents agrégats. Faîtes de même avec les exécutables, le fichier de pagination de la mémoire virtuelle (pagefile. sys) et les fichiers de la base tempdb.

Téléchargez gratuitement cette ressource

Les 7 étapes d’un projet de dématérialisation RH

Les 7 étapes d’un projet de dématérialisation RH

Dans ce livre blanc, nous vous donnons les clés pour concevoir votre projet de dématérialisation RH. Vous découvrirez chacune des étapes qui vous permettront d’apporter de nouveaux services aux collaborateurs, de vous adapter aux nouvelles pratiques et de renforcer la marque employeur.

Tech - Par iTPro - Publié le 24 juin 2010