Accroche
Planning Inter-Entreprises
 
 
 
 
Réglages et optimisation des requêtes avec Microsoft SQL Server 2005
Réf. : MS2784
Durée : 3j / 21h
Tarif : 1350 €
Sessions ouvertes :
Mai
Juin 16 au 18
Juil
Réserver

Pré-requis

Pour suivre ce cours avec profit, les stagiaires doivent posséder les connaissances suivantes :

• avoir des connaissances pratiques sur le stockage des données ; notamment, l’organisation en tables et en lignes, les champs de largeur fixe et ceux de largeur variable ;

• être familiarisé avec des structures d’index et l’utilisation des index ; notamment, comprendre l’interaction entre les index clustérisés, les index non clustérisés et le heap ; savoir pourquoi un index covering peut améliorer les performances ;

• avoir une expérience pratique du développement de bases de données ; par exemple, trois ans au moins de développement à plein temps de bases de données en entreprise ;

• connaître le principe des verrous ; notamment, connaître les différents modes de verrous, les objets verrous, les niveaux d’isolement, et savoir ce qu'est un blocage de processus ;

• comprendre la syntaxe Transact- SQL et la logique de la programmation ; notamment, être à l’aise avec des requêtes avancées, des requêtes agrégées, des sous-requêtes, des fonctions définies par l’utilisateur, des curseurs, le contrôle des flux, les expressions CASE et tous les types de jointure;

• être capable de normaliser une base de données (jusqu’au niveau 3) et savoir faire des compromis après une normalisation complète (dénormalisation) afin d’optimiser les performances ; savoir répondre aux impératifs de l’entreprise etêtre familiarisé avec les modèles de conception, comme les schémas Star et Snowflake ;

• posséder des connaissances étendues dans la surveillance et le dépannage d’une base de données et savoir utiliser les outils de surveillance ;

• posséder des connaissances élémentaires sur le système d'exploitation et la plateforme ; par exemple, comment le système d’exploitation et la base de données interagissent, et quels sont les éléments qui dépendent du système d’exploitation ou de la plateforme ;

•posséder des connaissances élémentaires sur l’architecture d’une application ; par exemple, comment concevoir des applications à trois niveaux, ce que les applications peuvent faire, comment l'application et la base de données interagissent, et comment la base de données et le système d’exploitation ou la plateforme interagissent ;

• savoir utiliser un outil de modélisation des données ;

• connaître les fonctionnalités, les outils et les technologies de SQL Server 2005 ;
• être un Microsoft Certified Technology Specialist : certification SQL Server 2005 ou expérience équivalente.

De plus, il est recommandé, mais pas obligatoire, que les stagiaires aient suivi les cours ci-après ou qu’ils disposent des connaissances équivalentes :

• Cours Écriture de requêtes Transact-SQL pour Microsoft SQL Server 2005
• Cours Implémentation d'une base de données Microsoft SQL Server 2005
• Cours Maintenance d'une base de données Microsoft SQL Server 2005



Participants

Ce séminaire s’adresse aux développeurs professionnels de bases de données qui possèdent trois années au moins d’expérience dans le développement de solutions de bases de données SQL Server en entreprise.

Objectifs

À la fin de ce cours, les stagiaires seront à même d’effectuer les tâches suivantes :

• normaliser des bases de données ;
• concevoir une base de donnée normalisée ;
• optimiser la base en données en effectuant des compromis (dénormalisation) • optimiser le stockage des données ;
• gérer les accès concurrents ;
• gérer les accès concurrents en choisissant le niveau d’isolation approprié pour les transactions ;
• choisir le niveau de granularité pour les verrous ;
• optimiser les requêtes pour obtenir les meilleures performances ;
• optimiser la stratégie des index ;
• examiner si les curseurs sont appropriés ;
• identifier et résoudre les problèmes limitant les performances.



Contenu

Module 1 : Mesure des performances de la base de données

Ce module explique comment mesurer les performances d’une base de données et comment identifier les goulets d’étranglement en termes de performances. Les stagiaires utiliseront un script d’exemple pour mettre en évidence les problèmes de performance et d’accès simultanés, pour mesurer les performances actuelles et pour classer les problèmes identifiés par ordre d’importance.

• Importance des tests
• Principales mesures pour les performances des requêtes : Sysmon
• Principales mesures pour les performances des requêtes : Profiler
• Conseils pour identifier les verrous et les blocages

Atelier : Mesure des performances de la base de données

• Examen des tables et des scripts
• Détermination des performances de base
• Classement par priorité des problèmes rencontrés

Module 2 : Optimisation de la conception physique d’une base de données

Ce module décrit diverses stratégies pour optimiser l’organisation physique de la base de données. Les stagiaires optimiseront le schéma d’une base de
données en utilisant la normalisation, la généralisation et la dénormalisation.

• Modèle d’optimisation des performances
• Stratégie d’optimisation du schéma : les clés
• Stratégie d’optimisation du schéma : une dénormalisation à bon escient
• Stratégie d’optimisation du schéma : la généralisation

Atelier : Optimisation des schémas

• Optimisation des membres
• Optimisation des événements
• Normalisation des parrainages d’événements
• Dénormalisation des visites des membres
• Nettoyage du schéma
• Adaptation de la solution à un nouveau schéma
• Détermination des performances

Module 3 : Optimisation des requêtes pour améliorer les performances

Ce module montre comment régler et optimiser les requêtes afin d'optimiser les performances. Les stagiaires optimiseront des procédures stockées, des vues et des requêtes d’agrégation sans curseur afin d’améliorer les performances d’accès à la base de données et de réduire le temps d’attente pour l’utilisateur. Chaque requête optimisée améliore le système tout entier car la requête utilisera moins de ressources, permettra à d’autres requêtes d’utiliser ces ressources ainsi libérées, et réduira le nombre de verrous posés par la requête. Cet effet de domino est important.

• Modèle d’optimisation des performances : Requêtes
• Qu’est-ce que le flux logique d’une requête ?
• Considérations sur l’utilisation des sous-requêtes
• Conseils pour concevoir des requêtes efficaces

Atelier : Optimisation des requêtes

• Optimisation et réécriture des procédures stockées trop lentes
• Optimisation et réécriture des vues trop lentes
• Optimisation et réécriture des requêtes agrégées sans curseur trop lentes
• Mesure des performances

Module 4 : Nouvelle analyse des curseurs dans les requêtes

Ce module décrit diverses stratégies pour repenser l’utilisation des curseurs dans les requêtes. Les stagiaires optimiseront une base de données en
remplaçant un code itératif lent par un code plus rapide utilisant des sets.

• Modèle d’optimisation des performances : solutions fondées sur les requêtes de sets de données
• Cinq étapes pour élaborer un curseur
• Stratégies pour repenser les curseurs

Atelier : Nouvelle analyse des curseurs dans les requêtes

• Revoir le curseur pMembershipCategory
• Revoir le curseur pCommunityImpact
• Revoir le curseur pMemberInvitation
• Mesurer les performances

Module 5 : Optimisation de la stratégie d’indexation

Ce module décrit diverses stratégies pour optimiser l’indexation. Les stagiaires ajouteront et supprimeront des index sur une base de données, en assurant la liaison optimale entre les requêtes et les données, sans redondance.

Modèle d’optimisation des performances : Index

• Considérations sur l’utilisation des index
• Meilleures utilisations des index clustérisés
• Bonnes pratiques pour une conception d’index non clustérisés
• Comment documenter une stratégie d’indexation

Atelier : Optimisation de la stratégie d’indexation

• Identifier les tables à optimiser
• Concevoir les index
• Mesurer les performances

Module 6 : Gestion des accès concurrents

Ce module décrit les problèmes posés par des accès concurrents aux données. Il montre comment les résoudre en optimisant les transactions et en ajustant le niveau d'isolation de la transaction.

• Modèle d’optimisation des performances : Verrous et blocages
• Multimédia : « comment concevoir des requêtes efficaces pour réduire les verrous et les blocages »
• Stratégies pour réduire les verrous et les blocages

Atelier : Réduction des blocages

• Identification du code présentant des problèmes de verrous et de blocages
• Diminution des problèmes d’accès concurrents
• Mesure des performances finales

CFI Formation - 142 rue Montmartre - 75002 PARIS - Tél. : 01 400 600 54 - Fax : 01 400 605 68