SYSTEMES DE GESTION DES BASES DE DONNEES HENRY F.KORTH / ABRAHAM SILBERSCHATZ RESUME TABLE DES MATIERES

Documents pareils
Cours Bases de données

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Information utiles. webpage : Google+ : digiusto/

INTRODUCTION AUX BASES de DONNEES

Les bases de données

Systèmes d information et bases de données (niveau 1)

Présentation du module Base de données spatio-temporelles

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Chapitre 10. Architectures des systèmes de gestion de bases de données

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Bases de données Cours 1 : Généralités sur les bases de données

UE 8 Systèmes d information de gestion Le programme

Programmation parallèle et distribuée

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Table des matières. Avant-propos

CHAPITRE 1. Introduction aux bases de données

Bases de données relationnelles : Introduction

Systèmes de Gestion de Bases de Données (SGBD) relationnels Maude Manouvrier

Développement de base de données Microsoft SQL Server Durée : 5 jours Référence : DPSQL12. Contenu

Introduction aux Bases de Données Relationnelles Conclusion - 1

IFT3030 Base de données. Chapitre 1 Introduction

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Le "tout fichier" Le besoin de centraliser les traitements des fichiers. Maitriser les bases de données. Historique

CESI Bases de données

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Introduction aux SGBDR

Bases de Données. Plan

Introduction aux bases de données

Structure fonctionnelle d un SGBD

Introduction aux bases de données et aux SGBD

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Implémentation des SGBD

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Bases de données. Chapitre 1. Introduction

Bases de données - Modèle relationnel

COMPOSANTS DE L ARCHITECTURE D UN SGBD. Chapitre 1

TP Bases de données réparties

Master I Génie Logiciel

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Bases de données avancées Introduction

Gestion des bases de données

Optimisations des SGBDR. Étude de cas : MySQL

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Oracle Maximum Availability Architecture

Les Géodatabases en 9.2

Introduction aux Bases de Données

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Architectures d implémentation de Click&DECiDE NSI

SQL Server 2012 et SQL Server 2014

IFT Concepts. Claude Frasson A de Bases de données avancées

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Programme détaillé. Administrateur de Base de Données Oracle - SQLServer - MySQL. Objectifs de la formation. Les métiers

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

BD réparties. Bases de Données Réparties. SGBD réparti. Paramètres à considérer

Catalogue des formations Edition 2015

Cloud Computing Maîtrisez la plate-forme AWS - Amazon Web Services

Programmation parallèle et distribuée

Bases de données réparties: Fragmentation et allocation

Introduction aux bases de données Cours 1 : Généralités sur les bases de données

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Machines virtuelles Cours 1 : Introduction

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

Créer le schéma relationnel d une base de données ACCESS

4D v11 SQL Release 5 (11.5) ADDENDUM

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

//////////////////////////////////////////////////////////////////// Administration bases de données

La présente publication est protégée par les droits d auteur. Tous droits réservés.

Diplôme de Comptabilité et de Gestion. D é c r e t N d u 2 2 d é c e m b r e A r r ê t é d u 8 m a r s

A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW

Oracle 11g Optimisez vos bases de données en production (ressources matérielles, stockage, mémoire, requêtes)

Du 10 Fév. au 14 Mars 2014

<Insert Picture Here> Exadata Storage Server et DB Machine V2

Chapitre 1 : Introduction aux bases de données

Conception des systèmes répartis

Plan de formation : Certification OCA Oracle 11g. Les administrateurs de base de données (DBA) Oracle gèrent les systèmes informatiques

Sommaire Introduction Les bases de la cryptographie Introduction aux concepts d infrastructure à clés publiques Conclusions Références

SYSTÈME DE GESTION DE FICHIERS

Programmation parallèle et distribuée (Master 1 Info )

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Bases de données Outils de gestion

Langage SQL : créer et interroger une base

Architecture d un service de partage de données modifiables sur une infrastructure pair-à-pair

DESS CCI Formation Continue. Février Université Louis-Pasteur de Strasbourg Département d'informatique

Les bases de données Page 1 / 8

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Technologie SDS (Software-Defined Storage) de DataCore

BASES DE DONNÉES RÉSEAUX ET HIÉRARCHIQUES

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Oracle Database 11g: Administration Workshop I Release 2

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Cours de bases de données. Philippe Rigaux

Évolution de schémas dans les entrepôts de données mise à jour de hiérarchies de dimension pour la personnalisation des analyses

Transcription:

SYSTEMES DE GESTION DES BASES DE DONNEES HENRY F.KORTH / ABRAHAM SILBERSCHATZ RESUME Les systèmes informatiques actuels comportent, pour la plupart des bases de données dont l étude constitue désormais un chapitre bien à part de la science des logiciels. Cet ouvrage à pour but d initier le lecteur débutant ou l'universitaire à l'élaboration des systèmes de base de données. Il vise, en définitive, à résoudre les problèmes rencontrés lors de la création et de l utilisation des systèmes de bases de données, indépendamment du logiciel employé et du matériel sur lequel il est Implanté. 1. Introduction TABLE DES MATIERES 1.1. Objectif des systèmes de bases de données 1 1.2. Degré d'abstraction des données 4 1.3. Structuration des données 6 1.3.1. Structures logiques objets 6 1.3.2. Structures logiques orientées enregistrements 8 1.3.3. Structures physiques 10 1.4. Instanciation et schéma 10 1.5. Autonomie des données 11 1.6. Langage de définition des données 12 1.7. Langages de manipulation de données 12 1.8. Le gestionnaire de base de données 13 1.9. Administrateur de la base de données 15 1.10. Utilisateurs de la base de données 16 1.11. Structure globale d'un système 17 1.12. Résumé 18 Exercices 20 Notes bibliographiques 21 2. Modèle entités-relations 2.1. Entités et classes d'entités 23 2.2. Relations et classes de relations 25 2.3. Contraintes de correspondance 27 2.4. Identifieur (ou clé) primaire 30 2.5. Diagramme entités-relations 32 2.6. Réduction d'un diagramme E-R à un ensemble de tableaux 36 2.6.1. Représentation des classes d'entités fortes. 36 2.6.2. Représentation des classes d'entités faibles 38 2.6.3. Représentation des classes de relations 39 2.7. Extension et restriction 40 2.8. Agrégation 43 2.9. Résumé 45 Exercices 46 Notes bibliographiques 47 3. Modèle relationnel

3. Modèle relationnel 3.1. Structure des bases de données relationnelles 49 3.2. Langage formel de consultation 54 3.2.1. Algèbre relationnelle 54 3.2.2. Calcul relationnel 67 3.3. Langages de consultation commerciaux 74 3.3.1. SQL 74 3.3.2. Quel 84 3.3.3. Query-by-example 90 3.4. Modification de la base de données. 95 3.4.1. Effacement 95 3.4.2. Insertion 96 3.4.3. Mise à jour 97 3.5. Représentations externes 98 3.6. Résumé 103 Exercices 104 Notes bibliographiques 107 4. Modèle réseau 4.1. Concepts de base 109 4.2. Diagramme de données structurées 110 4.2.1. Relations binaires 110 4.2.2. Relations générales 114 4.3. Le modèle CODASYL DBTG 117 4.3.1. Restriction concernant les liens 117 4.3.2. Ensembles DBTG 119 4.3.3. Groupes répétitifs 122 4.4. Extraction des données DBTG 124 4.4.1. Zone de travail (area) 124 4.4.2. Instructions find et get 126 4.4.3. Accès individuel aux enregistrements 128 4.4.4. Accès aux enregistrements d'un ensemble 129 4.4.5. Prédicats 131 4.5. Mise à jour DBTG 132 4.5.1. Création de nouveaux enregistrements 132 4.5.2. Modification d'un enregistrement 132 4.5.3. Suppression d'un enregistrement 133 4.6. Traitement des ensembles DBTG 134 4.6.1. L'instruction connect 134 4.6.2. L'instruction disconnect 135 4.6.3. L'instruction reconnect 136 4.6.4. Insertion et rétention dans un ensemble 136 4.6.5. Effacement 138 4.6.6. Mise en ordre d'un ensemble 138 4.7. Résumé 140 Exercices 141 Notes bibliographiques 144 5. Modèle hiérarchique 5.1. Concepts de base 147 5.2. Structure d'arbre 148 5.2.1. Relation unique 149 5.2.2. Plusieurs relations 157 5.3. Extraction des données 160 5.3.1. Zone programme utilisateur 162 5.3.2. Instruction get 163 5.3.3. Accès au sein d'un arbre 164 5.4. Mise à jour 166 5.4.1. Création de nouveaux enregistrements 166 5.4.2. Modification d'un enregistrement 168 5.4.3. Suppression d'un enregistrement 168 5.5. Enregistrements virtuels 169 5.6. Résumé 170 Exercices 172 Notes bibliographiques 175 6. Elaboration d'une base de données relationnelle 6.1. Difficultés liées au caractère «relationnel» 177 6.1.1. Répétition des informations 178 6.1.2. Représentation des informations 180 6.1.3. Perte d'informations 181 6.2. Normalisation sur dépendance fonctionnelle 185 6.2.1. Dépendance fonctionnelle 185

6.2.1. Dépendance fonctionnelle 185 6.2.2. Théorie des dépendances fonctionnelles 188 6.2.3. Propriétés souhaitables d'une décomposition 191 6.2.4. Forme normale de Boyce-Codd 195 6.2.5. Troisième forme normale (3NF) 200 6.2.6. Comparaison entre BCNF et 3NF 202 6.3. Normalisation en multidépendances 203 6.3.1. Multidépendances (ou dépendances multivaluées). 203 6.3.2. Théorie des multidépendances 206 6.3.3. Quatrième forme normale 207 6.4. Normalisation par dépendances jonctionnelles 212 6.4.1. Dépendances jonctionnelles 212 6.4.2. Forme normale à projections jointives 216 6.5. Forme normale à domaines-clés 216 6.6. Valeurs atomiques 218 6.7. Structures de rechange pour bases de données. 221 6.8. Résumé 224 Exercices 225 Notes bibliographiques 231 7. Structure des fichiers et du système 7.1. Structure d'ensemble du système 233 7.2. Support physique des données. 236 7.3. Organisation des fichiers 239 7.3.1. Enregistrements de longueur fixe 240 7.3.2. Enregistrements de longueur variable 243 7.4. Gestion de la mémoire tampon disque 250 7.5. Répartition des relations en fichiers. 254 7.6. Répartition de réseaux en fichiers 258 7.7. Répartition sur fichiers d'une base hiérarchique 264 7.8. Résumé 266 Exercices 267 Notes bibliographiques 269 8. Indexage et hachage 8.1. Notions de base 271 8.2. Fichier séquentiel indexé. 272 8.2.1. Fichier séquentiel.. 272 8.2.2. Fichier index. 274 8.2.3. Index secondaires 279 8.3. Fichier indexé par arbre B + 282 8.4. Fichier indexé par arbre B 289 8.5. Fonction de hachage statique 290 8.6. Fonction de hachage dynamique 294 8.7. Comparaison de l'indexage et du hachage 299 8.8. Accès multiclés 301 8.9. Résumé. 305 Exercices 306 Notes bibliographiques 308 9. Processus d'interrogation 9.1. Interprétation des requêtes 309 9.2. Expressions équivalentes 310 9.2.1. Opération de sélection 311 9.2.2. Jonction naturelle 313 9.2.3. Opération de projection 314 9.2.4. Autres opérations 315 9.3. Estimation du coût de traitement d'une requête 316 9.4. Estimation des coûts d'accès disque au moyen d'index 318 9.5. Stratégie de jonction 320 9.5.1. Itération simple 320 9.5.2. Itération orientée-bloc 322 9.5.3. Jonction-fusion 322 9.5.4. Utilisation d'un index 323 9.5.5. Jonction triple 323 9.6. Structure de l'optimiseur de requêtes 326 9.7. Résumé 326 Exercices 327 Notes bibliographiques 329 10. Récupération en cas d'avarie 10.1. Classification des avaries 331

10.1. Classification des avaries 331 10.1.1. Types de supports 331 10.1.2. Types d'avaries 332 10.1.3. Structure et opérations de stockage 333 10.1.4. Application bancaire 334 10.2. Transactions 337 10.3. Journal incrémental à mise à jour différée 340 10.4. Journal incrémentai à mise à jour immédiate 344 10.5. Points de contrôle 347 10.6. Gestionnaire de mémoire tampon 348 10.7. Pages d'ombre 349 10.8. Avarie avec perte de mémoire non volatile 354 10.9. Réalisation d'une mémoire sure 354 10.10. Résumé 355 Exercices 357 Notes bibliographiques 358 11. Gestion des traitements concurrents 11.1. Sérialisation 361 11.2. Test de sérialisabilité 366 11.2.1. Lecture avant écriture 367 11.2.2. Ecritures arbitraires 369 11.3. Verrouillage 376 11.3.1. Protocole de verrouillage deux-phases 380 11.3.2. Protocoles orientes-graphe 382 11.3.3. Récupération 384 11.4. Estampille temporelle 386 11.5. Techniques de certification 389 11.6. Granularité multiple 390 11.7. Schémas multiversion 394 11.8. Traitement des interblocages 396 11.8.1. Prévention des interblocages 396 11.8.2. Détection des interblocages et récupération 398 11.9. Résumé 401 Exercices 403 Notes bibliographiques 407 12. Les bases de données reparties 12.1. Structure des bases de données reparties 409 12.2. Compromis de répartition d'une base 412 12.2.1. Avantages de la répartition des données 412 12.2.2. Inconvénients de la répartition des données 413 12.3. Architecture des bases reparties 413 12.3.1. Réplications des données 414 12.3.2. Fragmentation des données 415 12.3.3. Réplication et fragmentation des données 419 12.4. Transparence et autonomie 419 12.4.1. Désignation des articles et autonomie locale 420 12.4.2. Transparence des répliques de fragments 421 12.4.3. Transparence de localisation 421 12.4.4. Schéma complet de désignation d'articles 422 12.4.5. Transparence et mise à jour des données répliquées 422 12.5. Traitement des requêtes sur base repartie 423 12.5.1. Réplication et fragmentation 424 12.5.2. Traitement par jonction naturelle 424 12.5.3. Stratégie de jonction exploitant le parallélisme 425 12.5.4. Stratégie de semi-jonction 426 12.6. Récupération d'un système reparti 427 12.6.1. Structure du système 427 12.6.2. Résistance aux pannes 429 12.6.3. Protocole de validation 431 12.7. Traitement des transactions simultanées 433 12.7.1. Protocoles de verrouillage 434 12.7.2. Estampillage temporel 437 12.8. Traitement des verrous mortels 439 12.8.1. Approche de type centralise 440 12.8.2. Répartition totale 442 12.9. Choix d'un coordinateur 445 12.9.1. Coordinateur de réserve 446 12.9.2. Algorithmes d'élection 447 12.10 Résumé 448 Exercices 449 Notes bibliographiques 453 13. Sécurité et intégrité

13. Sécurité et intégrité 13.1. Violation de la sécurité et de l'intégrité 455 13.2. Autorisation et vues 457 13.3. Contraintes d'intégrité 461 13.4. Cryptage des données 464 13.5. Extraction d'informations statistiques 466 13.6. Résumé. 467 Exercices 468 Notes bibliographiques 470 14. Applications nouvelles des bases de données 14.1. Introduction 471 14.2. Ingénierie assistée par ordinateur 472 14.2.1. Implantation en mémoire des objets conçus par ordinateur 473 14.2.2. Versions d'un modèle 476 14.2.3. Transactions sur les bases de données de conception 477 14.3. Bases de connaissances 480 14.3.1. Connaissance 480 14.3.2. Systèmes experts 481 14.3.3. Mise en œuvre d'une base de connaissances 483 14.4. Résumé. 485 Exercices 485 Notes bibliographiques 486 15. Etude de cas 15.1. Systèmes relationnels 489 15.1.1. System R 489 15.1.2. SQ L/Data System 495 15.1.3. Database 2 496 15.1.4. Oracle 497 15.1.5. Ingres 498 15.2. Systèmes réseau 501 15.2.1. Total 501 15.2.2. IDMS 501 15.3. Systèmes hiérarchiques 502 15.3.1. IMS 502 15.3.2. System 2000 504 15.4. Bases pour micro-ordinateurs 505 15.4.1. d Base III 506 15.4.2. Feuilles de calcul et tableurs 508 Notes bibliographiques 511 Bibliographie 513 Index 543 TOP