Ingénierie et optimisation des bases de données
NFE106


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.

Public et conditions d'accès :

Licence informatique ou équivalent, maîtrise du modèle relationnel et bases en SQL et dans les systèmes informatiques

Compétences :

Maîtrise des aspects systèmes des SGBD relationnels: stockage, évaluation de requêtes, concurrence d'accès et reprise sur panne. 

Méthodes de validation :

Examen final, sur papier.

Contenu de la formation :

Les Systèmes de Gestion de Bases de Données (SGBD) sont des logiciels complexes qui offrent un ensemble complet et cohérent d'outil de gestion de données: un langage de manipulation et d'interrogation (SQL par exemple), un gestionnaire de stockage sur disque, un gestionnaire de concurrence d'accès, des interfaces de programmation et d'administration, etc.

Le cours propose d'aller ”sous le capot” des systèmes relationnels pour étudier comment ils fonctionnent et réussissent le tour de force de proposer des accès sécurisés à des centaines d'utilisateurs en parallèle, tout en obtenant des temps de réponses impressionnants même pour des bases très volumineuses. Le contenu correspond typiquement à un cours universitaire de deuxième cycle en informatique. Il couvre les connaissances indispensables à tout informaticien de niveau ingénieur amené à mettre en place des applications professionnelles s'appuyant sur une base de données (soit une classe d'application extrêmement courante).

Le cours comprend trois parties consacrées successivement au stockage et aux structures de données, au méthodes et algorithmes d'optimisation, et enfin aux transactions et à la reprise sur panne.

a) Rappels de fonctionnement du SGBD Relationnel
b) Stockage

c) Structures d'index: l'arbre B

d) Structures d'index: le hachage
e) Opérateurs d'évaluation des requêtes
f) Optimisation de requêtes: plans d'exécutions, outils EXPLAIN
g) Transactions
h) Concurrence d'accès
g)  Reprise sur panne

TP d'optimisation sur Postgres
En faisant varier la base, et en utilisant l'outil EXPLAIN, on observe le choix de l'optimiseur du SGBD des stratégies d'optimisation de nombreuses requêtes SQL variées. Ce TP demande une bonne connaissance de SQL. Ce TP est proposé en ligne.


TP concurrence d'accès 
Ces travaux pratiques consistent à expérimenter le comportement d'un système transactionnel conforme à la norme SQL. Des simulations dan des scénarios variés amènent à comprendre les différents niveaux d'isolation et les propriétés ACID de ces systèmes.  Ce TP est proposé en ligne.

Bibliographie :
  • R. Ramakrishnan, J. Gehrke: Database Management Systmes, Mc Graw Hill, 2nd edition, 2000
  • H. Garcia-Molina, J. Ullman, J. Widom: DATABASE SYSTEM, THE COMPLETE BOOK” Prentice Hall,2000
  • Philippe Rigaux: Support de cours complet, http://sys.bdpedia.fr

Cette UE apparaît dans les diplômes et certificats suivants :

Prochaines sessions de formation

Filtres :
Centre de formation Semestre
2022/2023
Jours de
formation
Modalité Tarif    
Paris Semestre 2 180 €

Date de début des cours (*) :

  • 06/02/2023

* Les dates fournies sont d'ordre général à toutes les formations.
  Les cours pour cette formation peuvent potentiellement commencer un peu plus tard dans le semestre.

Ajouter au panier
Contacter le centre
Légende :
Date de début de cours :
  • Île-de-France :
    • 1er semestre et annuel : 26/09/2022
    • 2e semestre : 01/03/2023
  • Paris :
    • 1er semestre et annuel : 19/09/2022
    • 2e semestre : 06/02/2023

Les dates fournies sont d'ordre général à toutes les formations. Les cours pour cette formation peuvent potentiellement commencer un peu plus tard dans le semestre.

Tarif :

Seul le financement à titre individuel est proposé à l'inscription en ligne. Si vous souhaitez financer votre formation par votre entreprise, vous devez demander un devis auprès de nos centres Tarifs en vigueur depuis le 17 juin 2020.

Annuel :

Il s'étend de fin septembre / début octobre à début juillet (dates indicatives, renseignez-vous auprès de votre centre).

Semestre 1 :

Il s'étend de fin septembre / début octobre à fin janvier / début février (dates indicatives, renseignez-vous auprès de votre centre).

Semestre 2 :

Il s'étend de fin février / début mars à début juillet (dates indicatives, renseignez-vous auprès de votre centre).

Cours du soir :

Les cours commencent le plus souvent à 18h30 dans les centres.

  Cours en journée :

Se renseigner auprès du centre pour connaître les horaires.

Cours en ligne :

Les cours sont diffusés sous forme de séances numériques via une plateforme d'e-learning animées et tutorées par un enseignant. Des regroupements peuvent être proposés dont certains sont obligatoires.

  Classe virtuelle :

L'enseignant à distance intervient en direct et en visioconférence sur la plateforme d'e-learning. Il complète son intervention par des activités interactives (exercices échanges…)

  Cours en ligne hybride :

Cette modalité propose une majorité de cours en ligne tuteurés et des regroupements en présentiel obligatoires.

  Cours hybrides :

Cette modalité mixe des cours en présentiel (en cours du soir ou en journée) et des cours en ligne.

  Cours en ligne organisés par un autre
centre CNAM Régional :

Les cours sont diffusés sous forme de séances numériques via une plateforme d'e-learning animées et tutorées par un enseignant.

Recherche en cours