Bases de données - Concepts, utilisation et développement Dunod • Edition 2015 Jean-Luc Hainaut Les nouveautés de la 3e édition Troisième édition - Juin 2015 Cette édition constitue une révision majeure de l’édition précédente. Outre de nombreuses mises à jour, corrections et améliorations de présentation, elle inclut de nouveaux matériaux conformes à l’état de l’art en 2015. Elle comprend un nouveau chapitre consacré aux bases de données non relationnelles, en particulier les SGBD dits NoSQL. À chaque chapitre est désormais associée une annexe spécifique qui complète et approfondit celui-ci et qui reprend les exercices et (dans la plupart des cas) leurs solutions. Cette nouvelle organisation du texte a permis de conserver le volume initial de l'ouvrage. Enfin, un nouvel outil, SQLfast, est proposé pour l'apprentissage et l'exploitation des concepts de plusieurs chapitres. SQLfast est une extension du langage SQL permettant de rédiger simplement des scripts de traitement de bases de données. L'outil SQLfast permet à des utilisateurs débutants de développer et d'exécuter, via une interface conviviale, de petits scripts SQLfast. Il inclut également un moteur de tutoriels ainsi qu'une série de tutoriels dérivés du présent ouvrage. Avant-propos Chapitre 1 - MOTIVATION ET INTRODUCTION Chapitre 2 - CONCEPTS DES BASES DE DONNEES Discussion des identifiants et clés étrangères facultatifs La description de l'anomalie des clés étrangères transitives a été déplacée vers l'annexe A2 mais aussi vers le chapitre 3, où elle est étudiée de manière plus rigoureuse. Chapitre 3 - MODELE RELATIONNEL ET NORMALISATION Propriétés des DF : révision des règles d'inférence. Introduction du concept de fermeture d’un ensemble d’attributs. Analyse de l'anomalie des clés étrangères transitives. Annexe A3 : l'opérateur algébrique de division, les dépendances multivaluées, la quatrième forme normale, les relations d'Armstrong, les relations non en 1re forme normale (en cours de rédaction) Chapitre 4 - ELEMENTS DE TECHNOLOGIE DES BASES DE DONNEES Description de technologies alternatives : les disques RAID les disques électroniques les disques hybrides les mémoires à bandes les hiérarchies de mémoires les machines de bases de données. Dunod - Bases de données 2015 - Nouveautés 1 Révision de l'implémentation des index secondaires par listes de pointeurs. Introduction des index partiels. Étude des processus de chargement et de réorganisation des données Étude de la stabilité des adresses. Description technique de SQL Server de Microsoft. Nouveautés de l'annexe A4 : récupération d'une valeur corrompue, coût d'une recherche séquentielle, sélection d'un index. Chapitre 5 - LES SYSTEMES DE GESTION DE BASES DE DONNEES Les bases de données distribuées : fragmentation, réplication, partitionnement d'un réseau, transactions distribuées, commit en deux phases, distribution des traitements. Les bases de données in-memory. Chapitre 6 - LE LANGAGE SQL DDL Déclaration des index partiels Les clés étrangères partiellement facultatives (clause match) Annexe A6 : exercices et applications en SQLfast. Chapitre 7 - LE LANGAGE SQL DML (1) Annexe A7 : quantificateur pour tout, exercices et applications en SQLfast Chapitre 8 - LE LANGAGE SQL DML (2) Les tables statiques Limitation de la taille d’un résultat Les variantes syntaxiques de la jointure Illustration de l'application cyclique PRODUIT-COMPOSITION Extension de la structure des requêtes select-from-where Annexe A8 : génération de tableaux statistiques, exercices et applications en SQLfast Chapitre 9 - LE LANGAGE SQL AVANCE Les common table expressions (CTE) Nouvelle présentation des requêtes récursive Les déclencheurs récursifs La fonction agrégative group_concat Annexe A9 : Comment prononcer SQL ? Etude approfondie des requêtes et algorithmes récursifs avec plusieurs applications complètes, Etude pratique détaillée de deux application des vues : évolution d'une base de données et les vues modifiables, Discussion pratique approfondie des déclencheurs, Discussion approfondie et applications du catalogue d'une base de données, Interface SQL des programmes d'applications : exemple de Python/SQLite, Injection de code SQL, Exercices et applications en SQLfast Chapitre 10 - LES BASE DE DONNEES NON RELATIONNELLES (nouveau chapitre) Les architectures de distribution Les bases de données NoSQL Les autres modèles non relationnels Étude de Cassandra Étude de MongoDB Les SGBD NewSQL (VoltDB) Annexe A9 : étude pratique de la conversion de données entre modèles, exercices et applications en SQLfast Dunod - Bases de données 2015 - Nouveautés 2 Chapitre 11 - CONSTRUCTION D’UNE BASE DE DONNEES Ajout d'une illustration convaincante de la difficulté de construire une base de données. Chapitre 12 - LE MODELE ENTITE-ASSOCIATION DE BASE Annexe A12 : discussion des cardinalités 1-N, notion de types d'entités faible Chapitre 13 - ELABORATION D’UN SCHEMA CONCEPTUEL Chapitre 14 - PRODUCTION DU SCHEMA DE LA BASE DE DONNEES Chapitre 15 - METHODOLOGIE DES BASES DE DONNEES Chapitre 16 - MODELE ENTITE-ASSOCIATION ETENDU Ce chapitre a été simplifié et légèrement réduit. Les matériaux les plus techniques ont été déplacés vers l'annexe A16. Chapitre 17 - LES DIAGRAMMES DE CLASSES UML L'analyse des multiplicités d'association a été synthétisée, la version complète étant reprise dans l'annexe A17. Chapitre 18 - ANALYSE CONCEPTUELLE DU DOMAINE D’APPLICATION Ce chapitre a été simplifié et réduit. Les matériaux complets de l'édition précédente sont repris dans l'annexe A18. Simplification des sections Correction d'un schéma, Normalisation d'un schéma et Intégration de schémas. Intégration de schémas : illustrations additionnelles des correspondances entre schémas. Annexe A18 : illustration de la technique d'évaluation d'un schéma par prototypage par une implémentation développée en SQLfast, développement d'un générateur automatique de prototypes, également rédigé en SQLfast. Chapitre 19 - CONCEPTION LOGIQUE D’UNE BASE DE DONNEES RELATIONNELLE Ce chapitre décrit une nouvelle approche plus efficace de la traduction des relations is-a. Chapitre 20 - CONCEPTION PHYSIQUE D’UNE BASE DE DONNEES RELATIONNELLE Les règles de conception physiques ont éte restructurées et simplifiées. Chapitre 21 - PRODUCTION DU CODE D’UNE BASE DE DONNEES Les règles de traduction des relations is-a ont été restructurées, notamment pour prendre en compte la nouvelle approche du chapitre 19. Annexe A21 : gestion des relations is-a en SQLfast. Dunod - Bases de données 2015 - Nouveautés 3 Chapitre 22 - RETRO-INGENIERIE D’UNE BASE DE DONNEES Annexe A22 : script SQLfast d'analyse de données pour la détection automatique des identifiants d'une base de données anonyme. Chapitre 23 - ETUDES DE CAS L'étude de cas de rétro-ingénierie a été déplacée vers l'annexe A22. ANNEXES GENERALES Les annexes générales ne sont pas liées spécifiquement à un chapitre de l'ouvrage. Chapitre A24 - SQL, LES ENSEMBLES ET LA LOGIQUE Chapitre A25 - TRANSFORMATIONS DE SCHEMAS Chapitre A26 - CONCEPTION LOGIQUE D’UNE BASE DE DONNEES RELATIONNELLE OBJET Chapitre A27 - APPLICATIONS AVANCEES DES BASES DE DONNEES Chapitre A28 - INTRODUCTION A SQLFAST Chapitre A29 - CONVENTIONS GRAPHIQUES DES MODELES Dunod - Bases de données 2015 - Nouveautés 4