II. LES SYSTÈMES HIÉRARCHIQUES



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

Les structures de données. Rajae El Ouazzani

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Générer du code à partir d une description de haut niveau

Quelques Algorithmes simples

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

1 Introduction et installation

Les différents types de relation entre les tables

Cliquez sur le site que vous souhaitez consulter, il s affichera directement dans le navigateur.

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

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

ARBRES BINAIRES DE RECHERCHE

LES TYPES DE DONNÉES DU LANGAGE PASCAL

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

Chapitre 1 : Introduction aux bases de données

données en connaissance et en actions?

COUCHE 7/OSI : TRANSFERT DE FICHIERS FTAM

OBJECTIFS ET ARCHITECTURE DES SGBD

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

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

Domain Name Service (DNS)

Les bases de données Page 1 / 8

Gestion de références bibliographiques

16H Cours / 18H TD / 20H TP

Arbres binaires de recherche

A QUOI SERVENT LES BASES DE DONNÉES?

TP Contraintes - Triggers

Notes de cours : bases de données distribuées et repliquées

Structure fonctionnelle d un SGBD

Notion de base de données

Note de cours. Introduction à Excel 2007

Activité 11 : Nuage de points ou diagramme de dispersion

Bernard HAMM, Évelyne LAVOISIER

1 è r e étape : créer sa base de d o n n é e s

Conventions d écriture et outils de mise au point

A QUOI SERVENT LES BASES DE DONNÉES?

BIRT (Business Intelligence and Reporting Tools)

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

Partie II Cours 3 (suite) : Sécurité de bases de données

RÉALISATION DE GRAPHIQUES AVEC OPENOFFICE.ORG 2.3

Administration des bases de données relationnelles Part I

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Domain Name System. F. Nolot

Les bases de données

1 Modélisation d être mauvais payeur

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

IFT3030 Base de données. Chapitre 1 Introduction

Introduction aux Bases de Données

Compétences Business Objects

AGRÉGATION «ÉCONOMIE ET GESTION»

Le Langage De Description De Données(LDD)

Initiation à LabView : Les exemples d applications :

Organiser les informations ( approche technique )

Méthode de préparation du fichier texte d import depuis Excel, via Access jusqu à Drupal.

A. Définition et formalisme

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Peut être utilisée à l intérieur du site où se trouve la liste de référence.

Formation à distance Powerpoint Réaliser une présentation - FOAD exemples de parcours -

La syllabe (1/5) Unité intuitive (différent du phonème) Constituant essentiel pour la phonologie au même titre que phonème et trait

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

FORMATION INFORMATIQUE. Venez rejoindre la Maison Familiale de Bourgueil

L ARBORESCENCE. Qu est-ce qu un dossier? L arborescence?

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Cours 1 : La compilation

Ebauche Rapport finale

Les arbres binaires de recherche

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Recherche dans un tableau

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)

Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

Annexe commune aux séries ES, L et S : boîtes et quantiles

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

Cours Bases de données

TP Blender n 2 : Importation d un modèle SketchUp et animation

SOMMAIRE 1 INTRODUCTION 3 2 CONTACTER VOTRE SUPPORT 3 3 ESPACE DE GESTION DES CARTES 4 4 CONFIGURER UNE CARTE 5

CHAPITRE 1. Introduction aux bases de données

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

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

chapitre 4 Nombres de Catalan

Écriture de journal. (Virement de dépense)

Faculté des sciences de gestion et sciences économiques BASE DE DONNEES

LE LANGAGE SQL2 1. INTRODUCTION

Chapitre 3 : outil «Documents»

La base de données dans ArtemiS SUITE

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Cours 420-KEG-LG, Gestion de réseaux et support technique. Atelier No5-1

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

CH.6 Propriétés des langages non contextuels

Université de Bangui. Modélisons en UML

Cours d initiation à la programmation en C++ Johann Cuenin

Jean-Pierre CHEINEY Philippe PICOUET Jean-Marc SAGLIO

Compilation (INF 564)

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Chapitre 5 : Flot maximal dans un graphe

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Gestion de stock pour un magasin

Administration des bases de données. Jean-Yves Antoine

Transcription:

II. LES SYSTÈMES HIÉRARCHIQUES Le modèle hiérarchique est assez bien adapté au monde réel, qui nous apparaît souvent au travers de hiérarchies. Beaucoup de systèmes sont encore basés sur ce modèle. Cependant, il n existe pas de standard. IMS d IBM sur matériels IBM uniquement. SYSTEM-2000 sur divers matériels : IBM, UNIVAC, CDC, CYBER. 1. Structure des bases de données hiérarchiques PRODUCTEURS BUVEURS CRUS ABUS MILLESIMES COMMANDES Exemple de base hiérarchique Bases de données Les systèmes hiérarchiques 17

a) Schéma hiérarchique Ensemble de types d'enregistrements R 1, R 2, R n. Ex., le type CRUS, le type MILLESIME, etc. Ensemble de liens L ij (1 i n, 1 j n). Ex. Un PRODUCTEUR produit des CRUS. 4 règles : R1 : Il existe au plus un lien L ij entre deux types d'enregistrements R i et R j. R2 : Aucun lien L ii n'est possible pour tout i. R3 : Chaque lien L ij correspond à une association 1-N (parent enfant). R4 : Le graphe structurel est un arbre ordonné appelé schéma hiérarchique (un type racine et des types dépendants). b) Diagramme hiérarchique SERVICE NOMSER RESPONSABLE NUMPIE EMPLOYE NUEMP NOM SALAIRE Exemple de diagramme hiérarchique complet (champs inclus) Définitions : Schéma de base de données hiérarchique : un ou plusieurs schémas hiérarchiques Schéma hiérarchique : un ensemble d occurrences hiérarchiques Occurrence hiérarchique : un arbre Forêt des occurrences : juxtaposition des occurrences hiérarchiques Bases de données Les systèmes hiérarchiques 18

S1 S2 S3 P1 P2 E1 E2 P2 E3 E4 F1 F2 F3 F2 F2 F3 F4 Forêt d occurrences hiérarchiques pour le diagramme hiérarchique précédent c) Propriétés d un schéma hiérarchique Le type racine ne doit pas participer comme enfant par ailleurs. Chaque type, sauf la racine, figure comme enfant dans une et une seule liaison (chaque type, sauf la racine possède un et un seul type parent). Un type peut jouer le rôle de parent pour plusieurs autres types (les enfants ordonnés de gauche à droite). Un type qui ne figure pas comme parent est appelé feuille du schéma hiérarchique. d) Forme linéaire d un schéma hiérarchique Certains langages de manipulation reposent sur une exploration linéaire. Séquence hiérarchique : parcours en préordre du schéma hiérarchique. PROCEDURE Préordre(X) / X est la racine de l arbre / Début Output(X) Pour chaque enfant Y de X dans l ordre gauche-droite faire Préordre(Y) Fin Ex. Séquence hiérarchique SERVICE,, EMPLOYE,. Chemin hiérarchique : séquence de nœuds N 1, N 2,, N i où N 1 est la racine et où N j est un enfant de N j-1 pour j = 2,3,...,i. Ex. Chemin hiérarchique SERVICE,,. Bases de données Les systèmes hiérarchiques 19

e) Représentation des associations M-N à l aide d un schéma hiérarchique Exemple : Association S-S indiquant les pièces approvisionnées par un fournisseur et les fournisseurs qui approvisionnent une pièce. Représentations non symétriques NO NO Deux représentations non symétriques d une association M-N Les performances d accès ne sont pas les mêmes pour les deux types. Représentation symétrique Base S Base S NO NO Représentation symétrique d une association M-N Redondance des identifiants Manipulation conjointe par le programmeur Liaison virtuelle parent-enfant Utilisation d un pointeur au sein d un même schéma hiérarchique ou entre des schémas hiérarchiques différents. Bases de données Les systèmes hiérarchiques 20

NO enfant virtuel P parent virtuel Représentation d une association M-N par liaison virtuelle Symétrisation possible en utilisant un segment dépendant du type et en installant un deuxième pointeur vers le type. P peut contenir des données d intersection. 2. Définition de bases hiérarchiques a) Contraintes du modèle hiérarchique Une occurrence qui n est pas une occurrence de la racine, ne peut pas exister dans la base sans être reliée à une occurrence parent réel. Toute occurrence autre que celle de la racine ne peut être insérée que si son parent réel est déjà présent dans la base. La suppression d un parent réel entraîne automatiquement la suppression de tous ses enfants réels et de ses descendants réels. Une occurrence ne peut être accédée qu'à travers un chemin hiérarchique. b) Définition d une base hiérarchique Cf. exemple ci-contre. Ligne 1 : nomme la base de données et précise l'organisation physique. Lignes 2 à 4 : description du segment racine SERVICE. Option SEQ : tri des occurrences de ce segment selon l'ordre ascendant des valeurs de NOMSER. Valeurs identiques interdites. Lignes 5 à 7 : description du segment. Bases de données Les systèmes hiérarchiques 21

1 DBD NAME=SERVICEDB, ACCESS=HDAM 2 SEGM NAME=SERVICE, BYTES=30 3 FIELD NAME=(NOMSER, SEQ), BYTES=15, START=1 4 FIELD NAME=RESPONSABLE, BYTES=15, START=16 5 SEGM NAME=, BYTES=40, PARENT=SERVICE 6 FIELD NAME=(NUMPIE, SEQ), BYTES=10, START=1 7 FIELD NAME=, BYTES=30, START=11 8 SEGM NAME=, BYTES=40, PARENT= 9 FIELD NAME=(, SEQ, M), BYTES=15, START=1 10 FIELD NAME=, BYTES=25, START=16 12 SEGM NAME=EMPLOYE, BYTES=45, PARENT=SERVICE 13 FIELD NAME=(NUEMP, SEQ), BYTES=10, START=1 14 FIELD NAME=NOM, BYTES=25, START=11 15 FIELD NAME=SALAIRE, BYTES=10, START=36 16 DBDGEN 17 FINISH 18 END Exemple de description avec IMS/DL1 Lignes 8 à 10 : description du segment. Option M + SEQ : clé non unique. Lignes 12 à 15 : description du segment EMPLOYE. Lignes 16 à 18 : indication de fin de description et fin de programme. 3. Manipulation de bases hiérarchiques Quelques exemples de transactions (syntaxe de IMS/DL1). a) Accès direct Caractéristiques de la pièce 118 : GET UNIQUE SERVICE (NUMPIE=118) Il faut indiquer le chemin hiérarchique complet. S'il existe plusieurs pièces portant le même numéro, c'est la première rencontrée qui est sélectionnée. Bases de données Les systèmes hiérarchiques 22

b) Accès séquentiel Caractéristiques de tous les fournisseurs à partir de la pièce 118 : GET UNIQUE SERVICE (NUMPIE=118) while DB-STATUS=0 do begin GET NEXT end c) Accès séquentiel sous un même parent Noms et adresses des fournisseurs de la pièce 118 pour le service SECURITE : GET UNIQUE SERVICE (NOMSER=SECURITE) (NUMPIE=118) while DB-STATUS=0 do begin GET NEXT WITHIN PARENT end d) Insertion Insérer un nouveau fournisseur pour la pièce 118 : INSERT SERVICE (NUMPIE=118) e) Suppression Supprimer la pièce 118 et ses descendants : GET HOLD UNIQUE SERVICE (NUMPIE=118) DELETE f) Remplacement Modifier la désignation de la pièce 118 : GET HOLD UNIQUE SERVICE (NUMPIE=118) Effectuer la modification dans la zone E/S REPLACE Bases de données Les systèmes hiérarchiques 23