» Le modèle et les données
Influence du type de données. Standard de schématisation. Composition des clefs.
Modélisation en fonction de la volumétrie.
Utilisation des contraintes et des déclencheurs.
Qualité des données. Gestion de la redondance.
Travaux pratiques
Comparaison de deux modèles aux données identiques.
» Optimisation du matériel
Processeurs et gestion du parallélisme.
Mémoire vive. Fenêtre de données et RAM optimale.
Comparaisons des versions 32 et 64 bits de Windows.
Paramètres des disques durs. RAID et SAN.
Infrastructure réseau : bonnes pratiques.
Travaux pratiques
Mesure des I/O du serveur physique à l'aide de Perfmon.
» Paramétrage de SQL Server
Remarques sur l'installation. Paramètres : OS, SQL Server, session. Audit du serveur avec Perfmon.
Gestion des ressources par quota
Travaux pratiques
Mesure des caractéristiques du serveur logique à l'aide de requêtes SQL et du moniteur de performances.
» Ecriture et lecture des données
Le moteur de stockage. Le cache des données.
Checkpoint et LazyWriter.
Organisation des tables et index. Volumétrie.
Transaction. Logs. Niveaux d'isolation.
Organisation logique des fichiers.
Travaux pratiques
Création d'une base multifichiers et migration des données.
» Optimiser les requêtes SQL
Rôle de l'optimiseur. Code procédural. Requêtes complexes. Influence de l'écriture des requêtes.
Plan de requête et statistiques d'exécution.
Défragmentation des index.
Monitorer l'exécution des requêtes.
Utilisation des DMV pour affiner l'optimisation.
Travaux pratiques
Comparaison des différentes écritures d'une même requête à l'aide de l'audit via Profiler.
» Coder pour la performance
Choisir entre Transact SQL et SQLCLR (C#, .Net).
Bonnes pratiques pour les procédures stockées.
Transactions : effets de bord et exceptions.
Déclencheurs et performances.
Monitorat. Tuning. Mesure.
Travaux pratiques
Réalisation d'une procédure de calcul d'auto-incrément (compteur) et d'une fonction utilisateur.
» Gérer de grandes bases de données
VLDB (Very Large DataBase).
La compression des données, des backups.
Le partitionnement.