ebook img

Polycopié de Philippe Rigaux PDF

177 Pages·2009·3.74 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Polycopié de Philippe Rigaux

Cours de bases de données PhilippeRigaux 13juin2001 2 TABLEDESMATIÈRES 3 Table des matières 1 Introduction 7 2 Présentationgénérale 9 2.1 Données,BasesdedonnéesetSGBD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Quedoit-onsavoirpourutiliserunSGBD? . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.1 Définitionduschémadedonnées . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2 Lesopérationssurlesdonnées . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.3 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.4 Concurrenced’accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 Leplanducours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 I Modèleset langages 15 3 LemodèleEntité/Association 17 3.1 Principesgénéraux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.1 Bonsetmauvaisschémas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.1.2 Labonneméthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.2 LemodèleE/A:Présentationinformelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.3 Lemodèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.1 Entités,attributsetidentifiants . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.2 Associationsbinaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3.3 Entitésfaibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.3.4 Associationsgénéralisées. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.4 AvantageetinconvénientsdumodèleE/A . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.5 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4 Lemodèlerelationnel 35 4.1 Définitiond’unschémarelationnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2 Passaged’unschémaE/Aàunschémarelationnel . . . . . . . . . . . . . . . . . . . . . . 37 4.2.1 Règlesgénérales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2.2 Retoursurlechoixdesidentifiants . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.2.3 Dénormalisationdumodèlelogique . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.3 LelangagededéfinitiondedonnéesSQL2 . . . . . . . . . . . . . . . . . . . . . . . . . . 45 4.3.1 TypesSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 4.3.2 Créationdestables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.3.3 Contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.4 Modificationduschéma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.4 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4 TABLEDESMATIÈRES 5 L’algèbrerelationnelle 55 5.1 Lesopérateursdel’algèbrerelationnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 5.1.1 Lasélection, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.1.2 Laprojection, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 5.1.3 Leproduitcartésien, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.1.4 L’union, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.1.5 Ladifférence, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.1.6 Jointure, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 5.2 Expressionderequêtesavecl’algèbre . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.1 Sélectiongénéralisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.2 Requêtesconjonctives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5.2.3 Requêtesavec et . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 5.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6 LelangageSQL 67 6.1 RequêtessimplesSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 6.1.1 Sélectionssimples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 6.1.2 LaclauseWHERE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 6.1.3 Valeursnulles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 6.2 Requêtessurplusieurstables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2.1 Jointures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 6.2.2 Union,intersectionetdifférence . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 6.3 Requêtesimbriquées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 6.3.1 Conditionsportantsurdesrelations . . . . . . . . . . . . . . . . . . . . . . . . . 74 6.3.2 Sous-requêtescorrellées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6.4 Agrégration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6.4.1 Fonctionsd’agrégation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6.4.2 LaclauseGROUP BY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 6.4.3 LaclauseHAVING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.5 Mises-à-jour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.5.1 Insertion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.5.2 Destruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 6.5.3 Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 6.6 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 7 Schémasrelationnels 81 7.1 Schémas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.1.1 Définitiond‘unschéma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.1.2 Utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 7.2 Contraintesetassertions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 7.3 Vues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 7.3.1 Créationetinterrogationd’unevue . . . . . . . . . . . . . . . . . . . . . . . . . 85 7.3.2 Miseàjourd’unevue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 7.4 Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 7.4.1 Principesdestriggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 7.4.2 Syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 7.5 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8 ProgrammationavecSQL 91 8.1 InterfaçageaveclelangageC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.1.1 Unexemplecomplet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 8.1.2 DéveloppementenC/SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 8.1.3 AutrescommandesSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 8.2 L’interfaceJava/JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 TABLEDESMATIÈRES 5 8.2.1 PrincipesdeJDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 8.2.2 LeplussimpledesprogrammesJDBC . . . . . . . . . . . . . . . . . . . . . . . . 99 8.2.3 Exempled’uneappletavecJDBC . . . . . . . . . . . . . . . . . . . . . . . . . . 100 II Aspects systèmes 105 9 Techniquesdestockage 107 9.1 Stockagededonnées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 9.1.1 Supports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 9.1.2 Fonctionnementd’undisque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.1.3 Optimisations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 9.1.4 TechnologieRAID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 9.2 Fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 9.2.1 Enregistrements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 9.2.2 Blocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 9.2.3 Organisationd’unfichier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 9.3 Oracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 9.3.1 Fichiersetblocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 9.3.2 Lestablespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 9.3.3 Créationdestables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 10 Indexation 133 10.1 Indexationdefichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 10.1.1 Indexnon-dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 10.1.2 Indexdense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 10.1.3 Indexmulti-niveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 10.2 L’arbre-B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 10.2.1 Présentationintuitive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 10.2.2 Recherchesavecunarbre-B+ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 10.3 Hachage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 10.3.1 Principesdebase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 10.3.2 Hachageextensible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 10.4 Lesindexbitmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 10.5 IndexationdansOracle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 10.5.1 ArbresB+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 10.5.2 ArbresB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 10.5.3 Indexationdedocuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 10.5.4 Tablesdehachage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 10.5.5 Indexbitmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 11 Introductionàlaconcurrenced’accès 155 11.1 Préliminaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 11.1.1 Exécutionsconcurrentes:sérialisabilité . . . . . . . . . . . . . . . . . . . . . . . 156 11.1.2 Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 11.1.3 Exécutionsconcurrentes:recouvrabilité . . . . . . . . . . . . . . . . . . . . . . . 158 11.2 Contrôledeconcurrence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 11.2.1 Verrouillageàdeuxphases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 11.2.2 Contrôleparestampillage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 11.3 GestiondestransactionsenSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 11.4 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 6 TABLEDESMATIÈRES 12 Travauxpratiques 167 12.1 Environnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 12.1.1 Connexionausystème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 12.1.2 Lescommandesutiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 12.1.3 UtilisationdeSQLPLUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 12.2 RequêtesSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 12.2.1 Sélectionssimples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 12.2.2 Jointures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 12.2.3 Négation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 12.2.4 Fonctionsdegroupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 12.3 Concurrenced’accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 12.4 Normalisationd’unschémarelationnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 12.5 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 7 Chapitre 1 Introduction Sommaire Ce cours s’adresse aux étudiants du cycle A du CNAM et a pour objectif l’étude des principes des SGBD relationnels et la mise en pratique de ces principes. Le contenu du cours est essentiellement le suivant: 1. Conception d’un schéma relationnel.Il s’agit de savoir définir un schéma relationnel complet et correct,comprenantdestables,descontraintes,desvues. 2. Langagesd’interrogationetdemanipulation.L’accentestmissurSQLetsesfondements,etsur l’intégrationdeSQLavecunlangagedeprogrammationcommeleC. Deplus,lecourscomprenduneintroductionauxproblèmes deconcurrenced’accès,dontlaconnais- sanceestnécessaireauxdéveloppeursd’applicationsbaséessurdesSGBD.Destravauxpratiquesavecle SGBDORACLEpermettentdemettreenoeuvrelestechniquesétudiéesencours. L’accentestdoncplutôtmissurlesnotionsdebase(qu’est-cequ’unSGBD,qu’unebasededonnées, qu’unlangaged’interrogation)etleurapplicationpratique.Ildemandéd’avoiracquisàlafinducoursles connaissancesnécessaires à l’utilisation d’unSGBD paruninformaticiennon-spécialiste.:création d’un schéma,insertion,mise-à-jour,destruction,interrogationdedonnées,etcomprehensiondesmécanismesde concurrenceintervenantdanslagestiond’unSGBD.Enrevanche,toutcequirelèvedelacompréhension desmécanismesinternesd’unSGBD(représentationphysique,évaluationderequêtes)oudesfondements théoriquesdumodèlerelationneln’estpasabordéici. Cedocumentestunsupportdecours:ilneprétendcertainementpasêtreexhaustifnitraiterendétail tous les sujets abordés. L’assistance au cours proprement dit, ainsi qu’aux travaux dirigés et aux travaux pratiquesestfortementrecommandée.Il existedeplusunsiteWEBquidonne desrenseignementscom- plémentaires,leshorairesdescours,lessolutionsdecertainsexercices,etc.Voicil’adresse: http://sikkim.cnam.fr/~rigaux/bdpi.html Pour ceux qui veulent en savoir plus, il existe une riche bibliographie dont voici quelques éléments recommandables: Ouvragesenfrançais 1. CarrezC.,DesStructuresauxBasesdeDonnées,Masson 2. GardarinG.,MaîtriserlesBasesdeDonnées:modèlesetlangages,Eyrolles 3. Marcenac,P.,SGBDrelationnels,Optimisationdesperformances,Eyrolles. 8 CHAPITRE1. INTRODUCTION Ouvragesenanglais 1. MeltonJ.etA.R.Simon,UnderstandingSQL,ACompleteGuide,MorganKaufmann,1993. 2. Ullman J.D., Principles of Database and Knowledge-Base Systems, 2 volumes, Computer Science Press 3. DateC.J.,AnIntroductiontoDatabaseSystems,Addison-Wesley Lepremierchapitre(correspondantaupremiercours)estune(rapide)présentationdetouslesthèmes présentésendétailsdanscecours.Onpeutlelirecommeunemiseenperspectivegénéraledel’ensemble del’enseignement. 9 Chapitre 2 Présentation générale Sommaire 2.1 Données,BasesdedonnéesetSGBD . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Quedoit-onsavoirpourutiliserunSGBD? . . . . . . . . . . . . . . . . . . . . . . 11 2.2.1 Définitionduschémadedonnées . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2.2 Lesopérationssurlesdonnées . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.3 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.4 Concurrenced’accès . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 Leplanducours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Cechapitreprésenteunpanoramagénéraldelaproblématiquedesbasesdedonnées. 2.1 Données, Bases de données et SGBD Lapremièrechoseàfaireestd’établirquelquespointsdeterminologie.Qu’est-cequ’unedonnée?C’est uneinformationquelconquecomme,parexemple:voiciunepersonne,elles’appelleJean.C’estaussiune relationentredesinformations:Jeanenseignelesbasesdedonnées.Desrelationsdecegenredéfinissent desstructures.Unebasededonnéesestunensemble,engénéralvolumineux,detellesinformations,avec unecaractéristiqueessentielle:onsouhaitelesmémoriserdemanièrepermanente.D’oùladéfinition: Definition2.1 UneBasededonnéesestungrosensembled’informationsstructuréesmémorisées surun supportpermanent. Onpeutremarquerqu’uneorganisationconsistantenun(ouplusieurs)fichier(s)stockéssurmémoire secondaireestconformeàcettedéfinition.Unensembledefichiersneprésentantqu’unecomplexitéassez faible, iln’y aurait pas là matière à longue dissertation. Malheureusement l’utilisation directe de fichiers soulèvedetrèsgrosproblèmes: 1. Lourdeur d’accès aux données. En pratique, pour chaque accès, même le plus simples, il faudrait écrireunprogramme. 2. Manquedesécurité.Sitoutprogrammeurpeutaccéderdirectementauxfichiers,ilestimpossiblede garantirlasécuritéetl’intégritédesdonnées. 3. Pasdecontrôledeconcurrence.Dansunenvironnementoùplusieursutilisateursaccèdentauxmême fichiers,desproblèmesdeconcurrenced’accèsseposent. D’oùlerecoursàunlogicielchargédegérerlesfichiersconstituantunebasededonnées, deprendre en chargeles fonctionnalités de protection et de sécurité et de fournir les différentstypes d’interfacené- cessaires à l’accès aux données. Ce logiciel (le SGBD) est très complexe et fournit le sujet principal de 10 CHAPITRE2. PRÉSENTATIONGÉNÉRALE ce cours. En particulier, une des tâches principales du SGBD est de masquer à l’utilisateur les détails complexesetfastidieuxliésàlagestiondefichiers.D’oùladéfinition. Definition2.2 Un Système de Gestion de Bases de Données (SGBD) est un logiciel de haut niveau qui permetdemanipulerlesinformationsstockéesdansunebasededonnées. Lacomplexitéd’unSGBDestessentiellementissuedeladiversitédestechniquesmisesenoeuvre,de lamultiplicitédescomposantsintervenantdanssonarchitecture,etdesdifférentstypesd’utilisateurs(ad- ministrateurs,programmeurs,noninformaticiens,...)quisontconfrontés,àdifférentsniveaux,ausystème. Voiciquelquesexemplesillustranttouslescasdefigurequ’ilfaudraitenvisagerdansuncoursexhaustif: – Les modèles de données: entité-relation, réseau, hiérarchique, relationnel, orienté-objet, modèles sémantiques. – Leslangagesderequêtes:fondementsthéoriques(logiquesdupremierordre,dupointfixe,algèbres diverses)etleslangagescommeSQL,SQL3,Datalog,OQL,etc. – Lestechniquesdestockage:surdisque(optique),surbande. – L’organisationdesfichiers:index,arbre-B,hachage,... – L’architecture:centralisé,distribué,surd’autresbasesaccessiblesparréseau. – Lestechniquesd’évaluationetd’optimisationderequêtes. – Laconcurrenced’accèsetlestechniquesdereprisesurpane. Pourmettreunpeud’ordredanstoutcela,onpeutseraccrocheràunearchitecturestandardconforme àlaplusgrandepartiedesSGBDexistant,etoffrantl’avantagedebienillustrerlesprincipalescaractéris- tiquesd’unSGBD. Cettearchitecturedistinguetroisniveauxcorrespondantd’unepartàtroisreprésentationséquivalentes del’information,d’autrepartauxchampsd’interventionsrespectifsdesprincipauxacteurs.Pourcesder- niers,nousutiliseronslaterminologiesuivante: – Utilisateurnaïf:dunonspécialistedesSGBDaunoninformaticien. – Concepteuretprogrammeurd’application:àpartirdesbesoinsdesdifférentsutilisateurs,écritl’ap- plicationpourdesutilisateurs“naïfs”. – Utilisateurexpert:informaticienconnaissantlefonctionnementinterned’unSGBDetchargéd’ad- ministrerlabase. ChaqueniveauduSGBDremplit(réalise)uncertainnombredefonctions: – Niveau physiques: gestion sur mémoire secondaire (fichiers) des données, du schéma, des index; Partagededonnéesetgestiondelaconcurrenced’accès;Reprisesurpannes(fiabilité);Distribution desdonnéesetinteropérabilité(accèsauxréseaux). – Niveaulogique:Définitiondelastructurededonnées:LangagedeDescriptiondeDonnées(LDD); ConsultationetMiseàJourdesdonnées:LangagesdeRequêtes(LR)etLangagedeManipulation deDonnées(LMD);Gestiondelaconfidentialité(sécurité);Maintiendel’intégrité; – Niveauexterne:Vues;Environnementdeprogrammation(intégrationavecunlangagedeprogram- mation);InterfacesconvivialesetLangagesde4eGénération(L4G);Outilsd’aides(e.g.conception deschémas);Outilsdesaisie,d’impressiond’états. Enrésumé,unSGBDestdestinéàgèrerungrosvolumed’informations,persistantes(années)etfiables (protectionsurpannes),partageablesentreplusieursutilisateurset/ouprogrammesetmanipuléesindépen- dammentdeleurreprésentationphysique.

Description:
Psychose. 1960. Hitchcock Alfred. 1899. Kagemusha. 1980. Kurosawa Akira. 1910. Volte-face. 1997. Woo. John. 1946. Pulp Fiction. 1995. Tarantino.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.