Formation » Informatique - Bases de données et langages » Base de données » Conception des bases de données pour développeurs

Base de données » Conception des bases de données pour développeurs

Duree : 3 jours

Objectifs : Savoir rédiger un modèle de données - Connaître le modèle relationnel - Savoir implémenter un schéma relationnel - Pouvoir évaluer les SGBD du marché en fonction de l'usage

Pre requis : Aucun

Public : Développeurs souhaitant concevoir, implémenter et optimiser une base de données ou manipuler les données d'une base de données dans un programme

Programme :

Caractéristiques des SGBDR

 Les objectifs d'un SGBD

Les différents niveaux d'abstraction : niveau conceptuel, niveau interne, niveau externe

L'indépendance des niveaux et les transformations d'un niveau à un autre

La modélisation des données

Mise au point du dictionnaire des données

L'objectif de la modélisation : obtenir une représentation canonique des données du domaine

Le modèle Entités / Associations : les entités, les associations, les cardinalités, identifiants

La modélisation objet (diagrammes de classes UML) : objets, classes, attributs, méthodes, associations, dépendance, agrégation

L'approche par la relation universelle et la décomposition suivant les dépendances fonctionnelles

La modélisation en types et sous-types (l'héritage)

Les associations réflexives pour représenter les arborescences, graphes… 

La modélisation des historiques

La méta modélisation

La démarche de modélisation : modéliser les vues externes suivant leur sémantique et les consolider en résolvant les conflits

Les contraintes sur les données : contraintes structurelles, contraintes de contexte

Les outils d'aide à la conception : exemple d’Ateliers de Génie Logiciel

Les schémas relationnels

Le modèle relationnel : concepts et vocabulaire, tables, colonnes, domaines, clefs primaires et clefs étrangères

Les types de colonnes et leurs variantes, les contraintes d’intégrité

La normalisation d'un schéma relationnel, les objectifs, les règles de normalisation

La transformation d'un modèle Entité / association ou d'un diagramme de classe en schéma relationnel

Introduction aux modèles relationnel/objet

L'optimisation des schémas relationnels, optimisation logique et optimisation physique

L'implémentation d'un schéma relationnel : les langages de description de données

Introduction à l’algèbre relationnelle, principaux opérateurs relationnels

Introduction aux langages de manipulation des données, aux langages de contrainte

L'implémentation des contraintes structurelles, contraintes de domaine, contraintes d'intégrité référentielle, contraintes de transition

Introduction aux déclencheurs (triggers) et aux procédures stockées

Pourvoir aux besoins des applications par des vues

La question des accès concurrents aux données : lecture impropre, lecture non reproductibles …

Les transactions : définition, intégrité et transaction, les règles ACID

Introduction à l’administration des bases de données

Sécurité de l’accès aux données : utilisateurs et autorisations différentiées

Politique de sécurité des données

Maintenance et évolution du schéma de la base au niveau logique, externe et physique

Introduction au tuning d’une base de données

Choix d’un SGBD

Principaux critères de choix : support des accès concurrents (transactions), richesse du langage de manipulation des données et notamment du langage de contrainte, possibilité d’utiliser triggers et procédures stockées, présence d’outils d’analyse des données, richesse des outils d’administration, outils de sécurité (reprise à chaud, à froid, journalisation…), facilité d’intégration avec des langages procéduraux ou objet, coût des licences, coût d’usage…

Présentation des principales offres du marché : PostgreSQL, Oracle, MySQL, SQL Server