Une introduction aux architectures de références “Fast Track SQL Server” pour les entrepôts de données (2/2) …

Le document

image[6][2]

constitue une excellente introduction technique sur le sujet. Nous en reprenons ici les principaux éléments.

Après une description de la phase de conception dans le précédent billet, il convient de passer à la phase d’implémentation.

8. Configuration du système

Les options de configuration suivantes sont critiques :

  1. configuration des disques en modes RAID-1
  2. mappage des groupes RAID-1 directement sur les LUNs
  3. mappage des LUNs sur les volumes Windows ou les points de montage

L’option de verrouillage des pages en mémoire (“Lock Pages in memory”) doit également être activée via GPO.

9. Configuration du SGBD

Par défaut le mode de récupération SQL Server est positionné en mode complet '(“recovery full”). Mettre en mode de récupération simple est recommandé et permet de ne pas logger les chargements lourds.

Les fichiers de bases (à la fois données et journaux) doivent être initialisés à leur taille finale afin de supprimer les opérations de croissance automatique pénalisantes en termes de performances.

Les configurations suivantes sont également attendues :

  • Chaque base de données utilisateurs a 2 fichiers créés par LUN.
  • Les bases TempDB et autres bases temporaires ont un fichier par LUN dans le groupe de fichiers primaire.
  • Pour toutes les bases utilisateurs, étendre tous les fichiers de données et désactiver l’option de croissance automatique (AUTOGROW)
  • Les bases TempDB et autres bases temporaires doivent avoir le paramètre de croissance automatique activé avec un incrément de 4 Mo.

10. Configuration des index

  • Les index cluster doivent être utilisés pour la plupart des tables. La colonne date est le plus souvent utilisée comme index cluster sur une table de faits.
  • Des index non cluster doivent être utilisés sur des tables qui nécessitent des recherches plus granulaires. Les grandes tables de dimensions peuvent bénéficier de plusieurs index non cluster. L’utilisation de la clé étrangère via une primitive INCLUDE permet d’optimiser les jointures avec une table de faits.
  • Les grandes tables de faits sont le plus souvent partitionnées par dates; ce qui permet de faciliter le nettoyage des données trop anciennes.

11. Opérations de maintenance

  • Les statistiques doivent être régulièrement mises à jour, et en particulier après des chargements lourds.
  • Une opération régulière, hebdomadaire ou mensuelle, doit être prévue pour défragmenter et recontruire les index.
  • La défragmentation au niveau du système de fichiers Windows doit aussi être prévue.

12. Opérations de chargement

Ces opérations sont détaillées dans un deuxième livre blanc : Implementing a SQL Server Fast Track Data Warehouse _us_thumb[1]