Objectifs pédagogiques
Comprendre et maitriser le fonctionnement d'un SGBD Relationnel pour devenir capable d'analyser les problèmes de performance et de cohérence et de proposer des solutions fondées. Un des principaux débouchés de la formation est une fonction d'administrateur de bases de données. Le contenu du cours permet de mieux appréhender le noyau du SGBD, l'optimisation des requêtes, la génération des statistiques, et le parallélisme des opérateurs indispensables pour obtenir de véritables gains de performances lors de l'utilisation de la base de données.
Au programme, nous mettons l'accent sur le stockage des données, les différentes techniques d'indexation qui sont la base de l'optimisation (comment bien choisir son index), les coûts des opérations de manipulation du SGBD (pour éviter de faire des requêtes couteuses), l'optimisation et la génération d'un plan d'exécution, la maitrise des outils de type EXPLAIN (comprendre ce que produit l'optimiseur), les différents SGBD existants sur le marché et leurs approches en terme d'optimisation avec Oracle, MySQL, SQL Server (Microsoft), DB2 (IBM), PostgreSQL, SQLite. Les techniques de concurrence d'accès et de reprise sur panne sont également présentées.
Afin de mieux appréhender ce cours, il est indispensable d'avoir déjà suivi un cours sur les fondements, l'interrogation et la conception de bases de données telles qu'ils sont abordés dans l'UE NFP107. Ce cours est donc une suite logique à NFP107 et va approfondir les bases acquises. La formation d'experts dans ce domaine est un des besoins reconnus de l'industrie dans le domaine de l'ingénierie des systèmes de gestion des bases de données et est une des composantes de nombreux métiers: Architecte de SGBD, Administrateur de Bases de données, Ingénieur en Systèmes de gestion de données, Gestionnaire d'entrepôts de données, Urbaniste, etc.
Mise en pratique. Cette maîtrise passe par la compréhension de techniques (optimisation de l'accès au support physique, algorithmique, stratégies d'optimisation) et leur mise en pratique sous forme de Travaux Pratiques avec le SGBD Oracle. Nous y étudierons l'extraction des informations nécessaires au DBA, l'exploitation de EXPLAIN, et l'optimisation de requêtes à travers des exemples typiques auxquels sont confrontés les DBA.
Capacité et compétences acquises
Maîtrise des aspects systèmes des SGBD relationnels: stockage, évaluation de requêtes, concurrence d'accès et reprise sur panne.