1
Systèmes de Gestion
de Bases de Données
Nicolas Anciaux – Nicolas.Anci[email protected]
Ressources web pour ce cours
www-smis.inria.fr/~anciaux/ENSTA/ASI13
2
Objectifs du module
•Pré requis: connaissances de base (IN206)
–Conception de BD : modèle entité association, modèle relationnel
–Programmation SGBD : SQL, programmation SQL
– Propriétés transactionnelles : Concurrence d’accès
•Objectifs des sessions
–Connaissance générales (culture)
• Raison d’être d’un SGBD
•Fonctionnalités : indépendance physique/logique, vues, langage de
manipulations, cohérence (contraintes d’intégrité et triggers), standards…
–Connaissances avancées
•Optimisation de requêtes
• Droits d’accès
•Tolérance aux pannes
•Audit des accès
•Chiffrement et anomymisation des données
3
1
2
Planning des sessions
– Approche bases de données et fonctionnalités essentielles d’un SGBD
– Conception de bases de données: modèle entité associations
– Modèle relationnel et Algèbre relationnelle
– Exercices de conception et d’algèbre
– Le langage SQL et programmation SQL
– L’optimisation de requêtes
– Création de base de données relationnelle en SQL (Oracle XE)
– Expériences sur l’optimisation de questions
– Contraintes d’intégrité
– Triggers SQL et PL/SQL
– Déclaration SQL de contraintes d’intégrité et triggers SQL3
– Politique de contrôle d'accès
– Modèles DAC-SQL, RBAC, MAC
– Bases de données privées virtuelles (Oracle VPD), Sécurité multi-niveau (Oracle Label Security)
– Expériences d'implantation de droits d'accès, principe du moindre privilège
– Tolérance aux pannes, algorithmes de journalisation et de reprise
– Audit des accès : triggers d’audit et outils internes au SGBD
– Expériences mettant en évidence les techniques de tolérance aux pannes
– Outils d’audit disponibles sur Oracle XE
– Place de la cryptographie dans la sécurité d'un SGBD
– Chiffrement de données et anonymat dans un SGBD
– Utilisation des outils cryptographiques disponibles sur OracleXE
Examen
Rappel:
(1h30)
TD: (2h)
Rappel:
Cours:
TD:
Cours:
TD:
Cours:
TD:
Cours:
TD:
Cours:
TD:
4
5
6
7
3
2/11
7/11
14/11
6/12
7/12
8/12
12/12
4
Compétences à acquérir
•Concevoir une base de données
–Réaliser un modèle conceptuel avec le modèle E/A
–Concevoir un modèle relationnelle de base de données
•Créer une application base de données
– Ecrire des requêtes SQL d’interrogation/mise à jour
–Interfacer un programme Java/JDBC avec une base de données
–Ecrire et invoquer des fonctions et procédure stockées en PL/SQL Oracle
–Implanter des triggers sur une base de données en PL/SQL Oracle
• Administrer une base de données en vue d’optimiser les performances
–Optimiser une base de données multi utilisateurs (gestion de la concurrence)
–Créer des index
– Réécrire des requêtes SQL pour obtenir un plan d’exécution plus performant
• Administrer une base en vue d’en assurer la sécurité
– Créer des utilisateurs/rôle et des droits d’accès (DAC-SQL, RBAC-SQL)
–Implanter une stratégie de tolérance aux pannes
–Auditer les accès
–Chiffrer des données sensibles
5
L’approche bases de données
Fonctionnalités logicielles principales
1 / 299 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!