LA STRUCTURE D'ARBRE-B Institut National des Sciences Appliquées – Rouen Département Architecture des Systèmes d’Information.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Module Systèmes d’exploitation
Structures de données avancées : Principales structures de fichiers
Structures de données avancées : B arbres
Structures de données avancées : Principales structures de données
Structures de données avancées : MBT ( Multidimensional B-trees )
Structures de données avancées : MTH ( Multidimensional trie hashing )
Chap. 4 Recherche en Table
Chapitre 3 Les arbres binaires
Arbre-B+ Hypothèse initiale : clé simple et unique Nœud = bloc.
Sensibilisation à l’Algorithmique
Implémentation des SGBD
Witold Litwin Structures physiques Witold Litwin
La Gestion de Fichiers 1. Concepts de base
Chap. 1 Structures séquentielles : listes linéaires
Traitement Co-Séquentiel: Appariment et Fusion de Plusieurs Listes
CPI 2005 Théorie des systèmes d’exploitation
Structures de données linéaires
LOGO Responsable du cours Mlle Amina GHRAB : 1 ère année IAG Institut Supérieur de Gestion de Tunis.
Les structures de données arborescentes
Arbre binaire de recherche
Chapitre VII. Tri Tri par tas Tri rapide.
Arbre Rouge Noir.
B-Arbre +.
Gestion de Fichiers Arbres B.
Indexation 1. Concepts de base 2. Arbre B 3. Indexes secondaires.
Sections sélectionnées du Chapitre 11
Les fichiers indexés (Les B-arbres)
Arbres Rouge noir Démo : INF3105 Structures de données et algorithmes
Structures de données IFT-2000
IFT Structures de données
1 Tri Externe Chapitre 13: Pourquoi Trier? Problème classique en informatique (Voir Knuth, v.3)! Données requises en ordre trié P.ex.: Trouver.
Indexes à Arbres et Indexes à Hachage
1 Tri Externe Chapitre 13: Pourquoi Trier? Problème classique en informatique (Voir Knuth, v.3)! Données requises en ordre trié P.ex.: Trouver.
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
Indexes à Arbres et Indexes à Hachage
Les concepts et les méthodes des bases de données
Les arbres et tas binomiaux
Gestion de Fichiers GF-12: Comment Gerer les Indexes qui ne tiennent pas en Memoire de Maniere Efficace?: I. Indexes Bases sur les Structures dArbres Binaires.
Gestion de Fichiers GF-10: Traitement Co-Sequentiel: Appariment et Fusion de Plusieures Listes (Base sur les sections de Folk, Zoellick & Riccardi,
Index multi-niveaux dynamiques (les B-arbres et les B-arbres+)
/* */ /*Mise en garde….. Notez bien: dans les exemples qui suivent, la clé d ’indexation est un.
326 UMLV Méthodes de classement destinées à de grandes masses de données Applicables à des fichiers séquentiels Complexité : évaluée surtout en nombre.
Structures de données IFT-2000
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
Graphes 1. Introduction 2. Définition 3. Représentation mémoire
Gestion de Fichiers GF-14: Acces Sequentiel et Indexe aux Fichiers et Arbres B+ Prefixes (Base sur le Chapitre 10 de Folk, Zoellick & Riccardi, File Structures,
Gestion de Fichiers GF-12: Comment Gerer les Indexes qui ne tiennent pas en Memoire de Maniere Efficace?: II. Arbres B (Base sur les Sections de.
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Objectifs A la fin de ce chapitre, vous pourrez : présenter l'utilisation d'opérations de chargement de données par chemin direct décrire l'utilisation.
Arbres binaires et tables de hachage
Structures de données avancées : Fichiers uni-dimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
GF-11: Tri Interne Efficace et Tri Externe
Structures de données avancées : MBT ( Multidimensional B-trees )
Structures de données avancées : Concepts du Multidimensionnel D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
La Gestion des fichiers
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
B.Shishedjiev - Modèle relationnel
Structures de données avancées : B arbres
Structures de données avancées : Variantes des B arbres
1 UMLV  FICHIERS Mémoire de masse découpée en blocs Fichier :liste chaînée de blocs, ou arbre de blocs (répertoires - fichiers)‏ Bloc d’éléments Bloc.
Structures de données avancées TH ( Hachage digital ) D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Principales structures de fichiers
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Structures de données avancées : Principales structures de données
Structures de données avancées : MTH ( Multidimensional trie hashing ) D. E ZEGOUR Institut National d ’Informatique.
4/25/2017 4:30 PM Arbres (2,4) CSI2510 CSI2510.
Page: 1-Ali Walid Gestion de fichiers. B-Arbre +.
. Le B-Arbre.
Transcription de la présentation:

LA STRUCTURE D'ARBRE-B Institut National des Sciences Appliquées – Rouen Département Architecture des Systèmes d’Information

LA STRUCTURE D'ARBRE-B A) RECHERCHE B) INSERTION C) SUPPRESSION D) INDEX PAR ARBRE-B+ E) MEMOIRE SECONDAIRE

ARBRE-B UN ARBRE-B D'ORDRE m EST UN ARBRE / 1/ CHAQUE NOEUD CONTIENT k CLES TRIEES AVEC : m £ k £ 2m (noeud non racine) 1 £ k £ 2m (noeud racine) 2/ CHAQUE CHEMIN DE LA RACINE A UNE FEUILLE EST DE MEME LONGUEUR h (HAUTEUR) 3/ UN NOEUD EST : - SOIT TERMINAL (FEUILLE) - SOIT POSSEDE (k+1) FILS / LES CLES DU ième FILS ONT DES VALEURS COMPRISES ENTRE LES VALEURS DES (i-1)ème ET ième CLES DU PERE

STRUCTURE D'UN NŒUD (ARBRE-B D'ORDRE m) -> k CLES AVEC k1 < k2 < ... < kn -> (k+1) POINTEURS / - TOUS SONT DIFFERENTS DE NIL SI LE NOEUD N'EST PAS UNE FEUILLE  - TOUS A NIL SI LE NOEUD EST UNE FEUILLE

CAPACITE NOMBRE DE CLES ARBRE-B d'ORDRE m , et de hauteur h -> NbClesMin = 2*(m+1) - 1 -> NbClesMax = (2*m+1) - 1 m = 100, h = 2 ==> NbClesMax = 8 000 000 STOCKAGE SUR DISQUE -> UN NOEUD = UNE PAGE h h+1

EXEMPLE (n°0) ARBRE-B D'ORDRE 2 -> CHAQUE NOEUD, SAUF LA RACINE CONTIENT k CLES AVEC 2 £ k £ 4 -> LA RACINE CONTIENT k CLES AVEC 1 £ k £ 4

RECHERCHE (D'UN ELEMENT DE CLE K) METHODE A PARTIR DE LA RACINE, POUR CHAQUE NOEUD EXAMINE - LA CLE K EST PRESENTE : SUCCES - K < k1 -> RECHERCHE DANS P0^ - K > k -> RECHERCHE DANS Pk^ - ki < K < ki+1 -> RECHERCHE DANS Pi^ SI UN DES POINTEURS VAUT NIL LA RECHERCHE EST UN ECHEC

INSERTION D'UN ELEMENT DANS UN ARBRE-B

INSERTION DE LA CLE 75 (Dans l'arbre-B de l'exemple 0) INSERTION DE 75 DANS UN NŒUD PLEIN => 5 CLES ECLATEMENT DU NOEUD EN 2 : - LES 2 PLUS PETITES CLES RESTENT DANS LE NOEUD - LES 2 PLUS GRANDES CLES SONT INSEREES DANS UN NOUVEAU NOEUD REMONTEE DE LA CLE MEDIANE (71) DANS LE NOEUD PERE

INSERTION DE LA CLE 75 (2) L'ARBRE-B DEVIENT

EXEMPLE (n°1) ARBRE-B D'ORDRE 2

INSERTION DE LA CLE 9 Eclatement du noeud par l'arrivée de la clé 9   -> Remontée de la clé 8 au noeud père Eclatement du noeud par l'arrivée de la clé 8 -> Création d'une nouvelle racine avec la clé 11 -> Augmentation d'une unité de la hauteur

ETAPE INTERMEDIAIRE

PRINCIPE DE L'INSERTION DANS UN ARBRE-B D'ORDRE m RECHERCHE DE LA FEUILLE D'INSERTION Si LA FEUILLE N'EST PAS PLEINE Alors INSERER LA CLE "A SA PLACE" Sinon /*La feuille est pleine 2m clés*/ LAISSER LES m PLUS PETITES CLES DANS LE NOEUD ALLOUER UN NOUVEAU NOEUD ET Y PLACER LES m PLUS GRANDES CLES REMONTER LA CLE MEDIANE DANS LE NOEUD PERE APPLICATION RECURSIVE DE CE PRINCIPEEVENTUELLEMENT JUSQU'A LA RACINE Finsi

SUPPRESSION D'UN ELEMENT DANS UN ARBRE-B

EXEMPLE (n°2) ARBRE B D'ORDRE 2 SUPPRESSION DE LA CLE 25 -> SUPPRESSION DANS UNE FEUILLE  -> LE NOMBRE D'ELEMENT DEVIENT < 2  -> COMBINAISON AVEC UN NŒUD VOISIN -> DESCENTE DE LA CLE (ICI 15) -> SUPPRESSION DU NOEUD

EXEMPLE (n°3) D'ARBRE B D'ORDRE 2 SUPPRESSION DE LA CLE 6   SUPPRESSION DE LA CLE 6   (SUPPRESSION DANS UNE FEUILLE) -> LE NOMBRE D'ELEMENT < 2 -> COMBINAISON AVEC UN NOEUD VOISIN   -> DESCENTE DE LA CLE (ICI 4) -> NOMBRE DE CLES > 4 -> REDISTRIBUTION AVEC REMONTEE DE LA CLE MEDIANE (ICI 3)

La hauteur de l'arbre est passée de 2 a 1 EXEMPLE (n°4) ARBRE-B D'ORDRE 2 (ETAT INITIAL) SUPPRESSION DE LA CLE 4 FINAL La hauteur de l'arbre est passée de 2 a 1

(SUPPRESSION DANS UN NOEUD NON FEUILLE) EXEMPLE (n°5) D'ARBRE-B D'ORDRE 2 SUPPRESSION DE LA CLE 5 (SUPPRESSION DANS UN NOEUD NON FEUILLE) -> RECHERCHE D'UNE CLE ADJACENTE DE LA CLE : ON PREND LA PLUS GRANDE CLE DU SOUS-ARBRE GAUCHE DE LA CLE  -> REMPLACEMENT DE LA CLE PAR LA CLE ADJACENTE TROUVEE -> SUPPRESSION DE LA CLE TROUVEE DANS UN NOEUD FEUILLE

EXEMPLE EN CASCADE SUPPRESSION DE LA CLE 5

EXEMPLE EN CASCADE (2) SUPPRESSION DE LA CLE 6 SUPPRESSION DE LA CLE 4

EXEMPLE EN CASCADE (3) ETAT FINAL

PRINCIPE DE LA SUPPRESSION CAS n°1 SUPPRESSION DANS UNE FEUILLE - LE NOMBRE DE CLES EST ≥ m -> TASSER LES CLES DANS LE NOEUD    - LE NOMBRE DE CLE DEVIENT < m -> COMBINER AVEC UN NOEUD ADJACENT CE QUI ENTRAINE LA DESCENTE D'UNE CLE DU NOEUD PERE AVEC EVENTUELLEMENT UNE REORGANISATION LOCALE LA REDUCTION DU NOEUD PERE AVEC MOINS DE m CLES ENTRAINE LA COMBINAISON DE CE NOEUD PERE AVEC UN NOEUD VOISIN DU MEME NIVEAU REMONTEE EVENTUELLE JUSQU'A LA RACINE

PRINCIPE DE LA SUPPRESSION (2) CAS n°2 SUPPRESSION DANS UN NOEUD NON FEUILLE    RECHERCHER une CLE ADJACENTE à la clé à SUPPRIMER - SOIT LA PLUS PETITE DU SOUS ARBRE DROIT - SOIT LA PLUS GRANDE DU SOUS ARBRE GAUCHE -REMPLACER LA CLE A SUPPRIMER PAR LA CLE ADJACENTE TROUVEE - SUPPRIMER LA CLE ADJACENTE (EQUIVALENT A LA SUPPRESSION DANS UNE FEUILLE)

INDEX PAR ARBRE B+

UN ARBRE B+ EST UN ARBRE B OU LES FEUILLES CONTIENNENT TOUTES LES CLES STRUCTURE D'ARBRE B+  DEFINITION UN ARBRE B+ EST UN ARBRE B OU LES FEUILLES CONTIENNENT TOUTES LES CLES SCHEMA D'UN NOEUD : SUPPRESSION D'UNE CLE : UNIQUEMENT DANS UNE FEUILLE UTILISATION SERT EN PRATIQUE A LA PLACE DES ARBRES B POUR L'ORGANISATION DES DONNEES SUR DISQUE

CREATION : INDEX ARBRE B+ RELATION VINS (NV, CRU, MIL, DEG) -> NON PLACEE CREATION D'UN INDEX UNIQUE SUR NV -> ARBRE B+ D'ORDRE 2   (NON PLACANT)

PLACEMENT PAR ARBRE B+ RELATION VINS (NV, CRU, MIL, DEG) -> PLACEE PAR ARBRE B+ D'ORDRE 2 SUR L'ATTRIBUT NV UNIQUE (PLACANT)

ARBRE B+ INDEX ORGANISE EN ARBRE B + ENSEMBLE DE FEUILLES CONTENANT LES CLES CONSEQUENCES - ECLATEMENT D'UNE FEUILLE : UNE COPIE DE LA CLE MEDIANE EST REMONTEE - SUPPRESSION D'UNE CLE : UNIQUEMENT DANS UNE FEUILLE => RECHERCHE JUSQU'AUX FEUILLES

CRITIQUE PLACEMENT ARBRE B+ AVANTAGES -> ACCES SEQUENTIEL TRIE SUR CLE -> ACCES SELECTIF SUR CLE -> QUESTIONS INTERVALLE -> ADAPTE AUX RELATIONS VOLUMINEUSES A FORTE CROISSANCE INCONVENIENTS -> TRAVERSEE INDEX POUR ACCES SELECTIF -> MAJ COUTEUSE SI : Eclatement page (INSERTION) Fusion page (SUPPRESSION)

PLACEMENT DES DONNEES SUR MEMOIRE SECONDAIRE PAR ARBRE B

PLACEMENT DES RELATIONS PAR ARBRE B HYPOTHESES 1 RELATION = 1 FICHIER 1 TUPLE = 1 ENREGISTREMENT 1 ATTRIBUT = 1 CHAMP CLE DE PLACEMENT : MONO ATTRIBUT (CORRESPOND A LA CLE PRIMAIRE DE LA RELATION DEFINIE LORS DE LA CONCEPTION DU SCHEMA) LA STRUCTURE D'ARBRE B SERT POUR L'ORGANISATION DES DONNEES SUR DISQUE

PLACEMENT (2) FICHIER ORGANISE SOUS FORME D'ARBRE B -> A CHAQUE CLE K, DANS TOUT NOEUD DE L'ARBRE B, EST ASSOCIEE LA VALEUR DE L'ELEMENT DE CLE K FICHIER INDEXE PAR ARBRE B -> A CHAQUE CLE K, DANS L'INDEX ORGANISE EN ARBRE B, EST ASSOCIE UN POINTEUR VERS L'ELEMENT DE CLE K

FICHIER ORGANISE EN ARBRE B  EXEMPLE : ARBRE B D'ORDRE 1   INCONVENIENTS -> 1 NOEUD = 1 BLOC DISQUE LIMITATION DE L'ORDRE AUGMENTATION HAUTEUR -> RECHERCHE,LECTURE D'INFORMATIONS INUTILES -> PARCOURS SEQUENTIEL DU FICHIER PARCOURS ARBRE B

FICHIER INDEXE PAR ARBRE B INDEX = ARBRE B (DENSE) SEQUENTIEL TRIE PAR PARCOURS D'ARBRE DONNEES : SEQUENTIEL NON TRIE EXEMPLE (avec arbre B d'ordre 1)

PLACEMENT DES DONNEES SUR MEMOIRE SECONDAIRE PAR ARBRE B+

L'ORGANISATION INDEXE IS3 INDEX = ARBRE B+ : DENSE ET TRIE DONNEES = SEQUENTIEL NON TRIE   EXEMPLE : index = arbre B+ d'ordre 2 Pointeurs vers des fichiers de données séquentiels et non triés

TOUTES LES CLES SONT DANS LES FEUILLES L'ORGANISATION VSAM ORGANISATION : SEQUENTIELLE INDEXEE REGULIERE Ensemble index + données organisé sous la forme d'arbre B+ Index est un ensemble des nœuds non feuilles : trié, non dense  Données est un ensemble de feuilles triées TOUTES LES CLES SONT DANS LES FEUILLES

EXEMPLE DE FICHIER VSAM LE FORMAT DES FEUILLES EST DIFFERENT DU FORMAT DES NON FEUILLES CREATION INITIALE DU FICHIER : CLES DONNEES DANS L'ORDRE ZONE DATA REMPLIE A 75 %

CLE DE PLACEMENT : PLACEMENT PAR METHODE INDEXEE ACCES A UNE RELATION CLE DE PLACEMENT : PLACEMENT PAR METHODE INDEXEE INDEX SECONDAIRE RELATION PLACEE, DEUX FORMES INDEX SECONDAIRE EST LUI MEME ORGANISE SOUS LA FORME PAR EXEMPLE, D'UN ARBRE B