Académique Documents
Professionnel Documents
Culture Documents
• A) RECHERCHE
• B) INSERTION
• C) SUPPRESSION
• E) MEMOIRE SECONDAIRE
ARBRE-B
• UN ARBRE-B D'ORDRE m EST UN
ARBRE /
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)
P0 K1 P1 K2 P2 Pk-1 Kk Pk
• NOMBRE DE CLES
ARBRE-B d'ORDRE m , et de hauteur h
-> NbClesMin = 2*(m+1) h - 1
-> NbClesMax = (2*m+1)h+1- 1
m = 100, h = 2
==> NbClesMax = 8 000 000
• 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
51
11 30 66 78
2 7 35 41 53 54 63 79 84 93
12 15 22 68 69 71 76
RECHERCHE
(D'UN ELEMENT DE CLE K)
• METHODE
A PARTIR DE LA RACINE, POUR
CHAQUE NOEUD EXAMINE
11 30 66 78
2 7 35 41 53 54 63 79 84 93
12 15 22 68 69 71 76
• 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
• L'ARBRE-B DEVIENT
51
11 30 66 71 78
2 7 35 41 53 54 63 79 84 93
12 15 22
68 69 75 76
EXEMPLE (n°1)
• ARBRE-B D'ORDRE 2
5 11 16 21
1 2 3 4 22 23 24 25
6 7 8 10 17 18 19 20
12 13 14 15
INSERTION DE LA CLE 9
5 11 16 21
5 8 11 16 21
1 2 3 4 22 23 24 25
6 7 17 18 19 20
9 10 12 13 14 15
11
5 8 16 21
1 2 3 4 9 10 12 13 14 15 22 23 24 25
6 7
17 18 19 20
PRINCIPE DE L'INSERTION DANS
UN ARBRE-B D'ORDRE m
• RECHERCHE DE LA FEUILLE
D'INSERTION
12 14 20 25
• SUPPRESSION DE LA CLE 25
10 27
12 14 15 20
1 2 3 6 7
• SUPPRESSION DE LA CLE 6
(SUPPRESSION DANS UNE FEUILLE)
3 8
1 2 4 7
3 8 16 21
1 2 4 7 9 10
• SUPPRESSION DE LA CLE 4
11
8 16 21
1 2 3 7 9 10
• FINAL
8 11 16 21
1 2 3 7 9 10
1 2 3 4 6 7 9 10
• SUPPRESSION DE LA CLE 5
(SUPPRESSION DANS UN NOEUD NON FEUILLE)
4 8
1 2 3 6 7 9 10
11
5 8 16 21
1 2 3 4 9 10 12 13 14 15 22 23 24 25
6 7
17 18 19 20
• SUPPRESSION DE LA CLE 5
11
4 8 16 21
1 2 3 9 10 12 13 14 15 22 23 24 25
6 7
17 18 19 20
EXEMPLE EN CASCADE (2)
• SUPPRESSION DE LA CLE 6
11
3 8 16 21
1 2 9 10 12 13 14 15 22 23 24 25
4 7
17 18 19 20
• SUPPRESSION DE LA CLE 4
11
8 16 21
1 2 3 7 9 10 12 13 14 15 22 23 24 25
17 18 19 20
EXEMPLE EN CASCADE (3)
• ETAT FINAL
8 11 16 21
1 2 3 7
9 10 12 13 14 15 22 23 24 25
17 18 19 20
PRINCIPE DE LA SUPPRESSION
• CAS n°1
SUPPRESSION DANS UNE FEUILLE
• DEFINITION
UN ARBRE B+ EST UN ARBRE B OU
LES FEUILLES CONTIENNENT
TOUTES LES CLES
• UTILISATION
SERT EN PRATIQUE A LA PLACE DES
ARBRES B POUR L'ORGANISATION
DES DONNEES SUR DISQUE
CREATION : INDEX ARBRE B+
51
INDEX SUR
NV EN ARBRE B+
11 30 51 66 76
11 66 76 30 51
PAGES DE LA
RELATION VINS
(NON PLACANT)
PLACEMENT PAR ARBRE B+
• RELATION VINS (NV, CRU, MIL, DEG)
->PLACEE PAR ARBRE B+ D'ORDRE 2
SUR L'ATTRIBUT NV UNIQUE
125 156
INDEX SUR NV
INDEX GROUPANT
(PLACANT)
ARBRE B+
• INDEX ORGANISE EN ARBRE B
+
ENSEMBLE DE FEUILLES
CONTENANT LES CLES
ACCES DIRECT
INDEX
ACCES SEQUENTIEL
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
11 Données 30 Données
66 Données 76 Données
• 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
51
11 30 66 76
51
11 30 66 76
2 12 35 53 68 79
7 15 41 54 69 84
11 22 51 63 71 93
30 66 76
INDEX
DONNEES
INDEX
Données
Valeur de la clé
Adresse du TUPLE
de placement
• INDEX SECONDAIRE
ou
Valeur de la clé
Adresse du TUPLE
secondaire