BD 2022 04 Elements de Technologie
BD 2022 04 Elements de Technologie
Les SGBD
2. Concepts des bases de données
3. Modèle relationnel et normalisation
4. Implémentation des structures de données
2e partie
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 1
1. Motivation et introduction 5. Les SGBD
2. Concepts des bases de données
3. Modèle relationnel et normalisation
4. Implémentation des structures de données
4.1 Introduction
4.2 Les mémoires externes
4.3 Organisation d'un espace de stockage
4.4 Traitement séquentiel d'un fichier
4.5 Les index
4.6 Organisation séquentielle indexée
4.7 Organisation calculée
4.8 Les index secondaires
4.9 Les techniques d'agrégation (clustering)
4.10 Un exemple : SQL Server de Microsoft
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 2
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 3
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Index structure technique associée à un fichier (une table par exemple) qui
permet un accès sélectif et rapide aux enregistrements (ou lignes)
de ce fichier qui possèdent des valeurs déterminées de certains
champs. Ces champs constituent la clé de l'index.
Un index est dit identifiant si un identifiant a été déclaré sur la clé de cet
index.
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 4
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 5
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
A = f(k)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 6
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 7
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Index primaire
1. le plus souvent identifiant
2. un seul index primaire par fichier
3. la structure du fichier dépend fortement de la présence d'un index primaire
4. difficile d'ajouter et de supprimer un index primaire au vol
5. faible volume, très bonnes performances
Index secondaire
1. identifiant ou non identifiant
2. de 0 à N index secondaires par fichier
3. la structure du fichier est indépendante de la présence d'un index
secondaire
4. facile d'ajouter et de supprimer un index secondaire au vol
5. volume plus important, moins bonnes performances
6. Certains SGBD n'offrent que des index secondaires
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 8
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 9
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 10
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 11
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 12
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
à démontrer !
L'organisation séquentielle indexée d'un fichier permet
1. la lecture séquentielle ordonnée des enregistrements du fichier de base
2. la lecture séquentielle ordonnée des valeurs de K (via l'index)
3. l'accès rapide à l'enregistrement tel que K = k
4. l'accès rapide aux enregistrements tel que K [k1, k2]
5. l'insertion rapide d'un enregistrement de clé K
6. la modification rapide de la valeur de K d'un enregistrement
7. la suppression rapide d'un enregistrement
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 13
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Hypothèses simplificatrices
1. La clé K est un identifiant du fichier
2. Le fichier contient des enregistrements d'un seul type
3. Les enregistrements sont de taille fixe
4. La taille des enregistrements est inférieure à la moitié de celle des pages
5. Un enregistrement est entièrement compris dans une page
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 14
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 15
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
H109 P650 H109 H991 H109 H736 H109 se trouve dans cette page
ou nulle part ailleurs
G110
H736
F400 H991
H109 DUPUIS Lausanne C2
H991
H736 ARNOULD Paris B1
K = 'H109' P650 J079
S712 P650
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 16
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
oui
k Kmax ?
non
i := 1; p := p1
i := i + 1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 17
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 18
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 19
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
G110
- H555 est absent
H736
- la page n'est pas pleine
F400 H991
H991
K = 'H555' P650 J079 H109 DUPUIS Lausanne C2
S712 P650 H736 ARNOULD Paris B1
G110
H555 est inséré dans la page
H736
F400 H991
H991
P650 J079 H109 DUPUIS Lausanne C2
S712 P650 H555 MARTINEZ Madrid
H736 ARNOULD Paris B1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 20
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
B332
- C805 est absent
C003
- la page est pleine
F400 D063
H991
K = 'C805' P650 J079 C123 MERCIER Namur C1
S712 P650 C400 FERARD Poitiers B2
D063 MERCIER Toulouse
B332 - la page est dédoublée
C003 nouvelle page
F400 C400 C123 MERCIER Namur C1
H991 D063 C400 FERARD Poitiers B2 0,5
P650 J079
S712 P650 C805 SMITH Londres B1
D063 MERCIER Toulouse 0,5
ancienne page
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 21
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 22
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
séquence logique
de lecture
Insertion dans la page 101, qui devient 101 (localisée en 99.997) + 102 (localisée en
101):
0 1 99 100 101 102 103 99.997 99.998 99.999 séquence physique
... ...
0 1 99 100 102 103 104 101
séquence logique
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 23
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Trois techniques
1. Les pages de bases sont chaînées via l'ajout d'un pointeur référençant la page de
base suivante. Le parcours de cette chaîne livre les pages de base dans bon ordre.
2. Les pages du dernier niveau d'index sont chaînées via l'ajout d'un pointeur
référençant la page d'index suivante (VSAM d'IBM). L'utilisation des pointeurs de
ces pages parcourues selon cette chaîne livre les pages de base dans bon ordre.
3. L'accès aux pages de base s'effectue via le parcours de l'index (visite des noeuds
en profondeur d'abord).
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 24
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Procédure
1. On recherche la page [p] dans laquelle l'enregistrement K = k devrait être
stocké.
2. Si la page [p] n'est pas pleine, on y insère l'enregistrement.
3. Si la page [p] est pleine, on procède à son éclatement :
3.1 on insère devant [p] une page vide [p'] (logiquement, pas physiquement)
3.2 on répartit la charge de [p] entre les pages [p'] et [p]
3.3 on insère l'enregistrement dans l'une de ces deux pages
3.4 on insère une entrée relative à la page [p'] dans le niveau n de l'index
Observations
1. le taux d'occupation de chaque page reste 0,5 (sauf, éventuellement la
dernière)
2. les pages logiquement consécutives ne le sont plus nécessairement
physiquement
3. l'insertion d'une entrée d'index obéit à la même procédure
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 25
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Scénario :
les enregistrements sont insérés par valeurs croissantes de la clé K (insertion
ordonnée)
Dans ce cas, la gestion des pages pleines peut être différente de la procédure
décrite plus haut.
Exemple :
Lors d'une insertion ordonnée, lorsque qu'une page (la dernière du fichier de
base) est pleine, une page suivante lui est associée, qui contiendra les
enregistrements suivants.
Le taux d'occupation n'est plus de 50% mais peut être plus élevé : 90% ou
même 100% (cf. Oracle, malgré l'appellation maladroite 90-10 split)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 26
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 27
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
B332
C003
F400 D063
H991
K = 'C400' P650 J079 C123 MERCIER Namur C1
S712 P650 C400 FERARD Poitiers B2 0,5
D063 MERCIER Toulouse
suppression
B332
C003
F400 D063
H991
P650 J079 C123 MERCIER Namur C1
S712 P650 D063 MERCIER Toulouse 0,5
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 28
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
B332
B062 GOFFIN Namur B2
C003
F400 D063 B110 HANSENNE Poitiers C1 0,5
B332 MONTI Genève B1
H991 F400
K = 'B512' P650 J079 B512 GILLET Namur B1
S712 P650 C003 AVRON Poitiers B1 < 0,5
B110
B062 GOFFIN Namur B2
C003
F400 D063 B110 HANSENNE Poitiers C1 0,5
H991 F400
P650 J079 B332 MONTI Genève B1
S712 P650 C003 AVRON Poitiers B1 0,5
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 29
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
G110
F375 BERNIER Paris C1
H736
F400 H991 G110 STEVEN London B2 0,5
H991
K = 'H109' P650 J079 H109 DUPUIS Lausanne C2
S712 P650 H736 ARNOULD Paris B1 < 0,5
0,5
H736
F400 H991 libre
H991
P650 J079 F375 BERNIER Paris C1
S712 P650 G110 STEVEN London B2 0,5
H736 ARNOULD Paris B1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 30
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Procédure
1. On recherche la page [p] de l'enregistrement.
2. On efface l'enregistrement de la page [p].
3. Si le taux d'occupation de la page [p] est < 0,5 :
3.1 on rééquilibre le contenu de [p] avec celui de la page précédente [p']
3.2 si le taux d'occupation des 2 pages est 0,5, on corrige l'entrée d'index
de niveau n relative à la 1re page
3.2 si le taux d'occupation d'une des deux pages est < 0,5, on les fusionne
3.3.1 on transfère le contenu de la page [p'] vers [p]
3.3.2 on abandonne la page [p'], qui devient libre
3.3.3 on supprime l'entrée de [p'] dans le niveau n de l'index
Observations
1. le taux d'occupation de chaque page reste 0,5
2. on produit des pages vides réutilisables lors de l'insertion d'enregistrements
3. la suppression d'une entrée d'index obéit à la même procédure
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 31
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Procédure
1. On supprime l'enregistrement K = k1.
2. On crée un enregistrement K = k2 de même contenu.
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 32
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Caractéristiques et performances
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 33
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Les données
1. Nombre d'enregistrements : Nr
2. Taille des enregistrements : Lr
3. Taille de la clé K : Lk
4. Taille d'une entrée d'index (Lk + taille pointeur de page) : Li
5. Taux moyen d'occupation des pages de base : b
6. Taux moyen d'occupation des pages d'index : i
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 34
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
On a bien sûr :
Np = Npb + Npi
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 35
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 36
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Evaluation de Npi
En général Npi(n) >> m < n Npi(m)
Donc Npi Npi(n) = Npb / Nipp
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 37
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 38
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Trois opérations
1. Lecture séquentielle
2. Lecture par index d'un enregistrement
3. Lecture par index des enregistrements d'un intervalle de K
Hypothèses réalistes
1. Disque partagé
2. Lecture anticipée d'une piste
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 39
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
... ...
n° séq. logique 0 1 99 100 101 102 103
... ...
0 1 99 100 102 103 104 101
12,3
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 40
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Analyse
1. Lecture des pages du fichier de base selon leur séquence physique ne marche
pas, car ruptures de séquence (séquence physique séquence logique)
2. On accède aux pages de base à partir de l'index (tout ou dernier niveau avec
chaînage), qui est ordonné selon K
3. Temps de lecture = temps de parcours de l'index (ou dernier niveau) + temps
d'accès aux pages de base
4 Mais, temps de parcours de l'index en général négligeable
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 41
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Exemple
Npb = 250.000; r = 0,2;
Sans rupture : tlsf = 46 s
Avec ruptures : tlsf = 652 s
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 42
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Analyse
1. Examen naïf : on accède à 1 page pour chaque niveau d'index + 1 page de
base
2. En pratique, on charge les premiers niveaux d'index dans le tampon pour éviter
les accès au disque
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 43
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Exemple
Npb = 250.000; n = 3; Npi(1) = 1; Npi(2) = 46; Npi(3) = 3.361;
Tampon de 1 page: tlk1 = 12,3 X 4, soit 49,2 ms
Tampon de 1 + 1 = 2 pages : tlk1 = 12,3 X 3, soit 36,9 ms
Tampon de 1 + 46 + 1 = 48 pages : tlk1 = 12,3 X 2, soit 24,6 ms
Tampon de 1 + 46 + 3.361 + 1 = 3 409 pages : tlk1 = 12,3 X 1, soit 12,3 ms
les performances
ont un coût
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 44
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Analyse
1. Intervalle : NCLI >= 'K111';
NCLI >= 'K000' and NCLI <= 'K999';
NCLI between 'K000' and 'K999';
NCLI like 'K%'
2. L'index est utilisé en deux temps :
2.1 accès par l'index NCLI = k1 (ou, plus généralement 1er enregistrement
qui satisfait la condition NCLI >= k1)
2.2 lecture séquentielle selon l'index tant que K <= k2
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 45
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 46
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 47
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
• recopier page
courante
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 48
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
3. Modifier un enregistrement
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 49
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 50
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 51
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Simulateur
• tableau d'entiers PAGE(Npmax); PAGE(I) = nbre d'enregistrements de la page I
• on initialise les Np0 premières pages selon Nrpp0
• on choisit une opération au hasard selon %ins
• on choisit un enregistrement R au hasard (il se trouve dans la page P)
• on simule l'opération sur R en modifiant PAGE(P) et ses voisines selon
l'opération choisie
• à la fin de chaque pas, on mémorise les statistiques
• à la fin des Nsim exécutions, on calcule les moyennes des statistiques et on
les sort dans un fichier de résultats
Simulateur : [Link]
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 52
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 53
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
simulation 1
résultats demandés
' commentaires
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 54
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Résultats de la simulation 1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 55
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Evaluation de
Comment évolue ?
1. En fonction du nombre d'opérations nop depuis la création du fichier. Durée de la
simulation : nop = Nop.
2. En fonction de la taille des pages Mrpp [en nombre d'enregistrements]
3. En fonction du taux d'occupation 0 à la création du fichier (Nr0 = x )
4. En fonction du % d'insertions %ins [0-100] dans les opérations insert-delete (100
= insertions seulement; 0 = suppressions seulement)
5. Ne dépend pas de la taille du fichier (Np) mais de nop / Nr0
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 56
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Evaluation de
0,90
%ins=50
0,85 %ins=60
%ins=70
0,80 %ins=80
%ins=90
%ins=100
0,75
0,70
0,60
0,55
0,50 pas
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
Np0 = 5 000; Mrpp = 40; 0 = 0,8; %ins = 50-100; Nop = 400 000
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 57
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
oui : [k x Np0, Mrpp, Nrpp0, %ins, k x Nop] = [Np0, Mrpp, Nrpp0, %ins, Nop]
[ Np0 = 1 000 000; Mrpp = 40; 0 = 0,8; %ins = 90; Nop = 100 000 000]
=
[Np0 = 5 000; Mrpp = 40; 0 = 0,8; %ins = 90; Nop = 500 000]
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 58
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,70
1 pas = 5 x Nr0 / 100
0,65
0,60
0,55
0,50 pas
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
Np0 = 5 000; Mrpp = 40; 0 = 0,8; %ins = 50-100; Nop = 1 600 000
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 59
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,71
0,70
0,69
0,68
Mrpp=10
0,67 Mrpp=20
Mrpp=30
0,66 Mrpp=40
Mrpp=50
0,65 Mrpp=60
Mrpp=70
0,64 Mrpp=80
Mrpp=90
0,63
Mrpp=100
0,62 %ins
50 55 60 65 70 75 80 85 90 95 100
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 60
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,90
0,85
0,80
0,75
0,70
0,65
0,60
0,55
0,50 pas
0
10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
[Mrpp=40; 0 = 0,8; %ins = 90%]
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 61
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Trois familles :
• selon Mrpp
• selon %ins
• selon 0
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 62
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
110
120
130
140
150
160
170
180
190
200
10
20
30
40
50
60
70
80
90
0
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 63
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,80 %ins=54
0,799
%ins=55
%ins=60
%ins=70
%ins=80
0,75 %ins=90
%ins=100 1 pas = Nr0 / 100
0,70
0,65 pas
10
20
30
40
50
60
70
80
90
0
100
110
120
130
140
150
160
170
180
190
200
22
= f(%ins=50-100; 0=0,7; Mrpp=20; pas)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 64
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,85
0,80
0,75
1 pas = Nr0 / 100
0,70
0,65
0,60
0,55 pas
100
110
120
130
140
150
160
170
180
190
200
10
20
30
40
50
60
70
80
90
0
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 65
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
100
90 r
split
80 bal
merge
70
60
50
40
1 pas = Nr0 / 100
30
20
10
0
100
110
120
130
140
150
160
170
180
190
200
10
20
30
40
50
60
70
80
90
0
[Np0 = 11 250; Mrpp = 20; %ins = 90; 0 = 0,8; Nop = 360 000]
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 66
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
15
split
14
bal
13
merge
12
11
10
9
8
7
6
1 pas = Nr0 / 100
5
4
3
2
1
0
100
110
120
130
140
150
160
170
180
190
200
0
10
20
30
40
50
60
70
80
90
[Np0 = 11 250; Mrpp = 20; %ins = 90; 0 = 0,8; Nop = 360 000]
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 67
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Nbre initial de pages Np0 1 000 000 Tps lecture page suivante (prefetch) tls1 0,000184
Taille des pages Mrpp 20 Tps lecture aléatoire 1 page. tla1 0,0123
Taux de chargement initial t0 0,8 Tps lecture page suivante (rupture) tlsr 0,0123
% des insertions %ins 0,9 Tps accès page de base av. insert tl1k (insert) 0,0246
Nbre d'opérations par jour op/jour 40 000 Tps accès page de base av. delete tl1k (delete) 0,0246
Nbre de pas Npas 200
Nop = 2 x Nr0 facteur Nop 2
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 68
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 69
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Quand réorganiser ?
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 70
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Logical parameters
Nbre d'enreg. Nr 1 000 000 records
Taille d'un enreg. Lr 200 bytes
Modèle de calcul : [Link] Taille de la clé Lk 40 bytes
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 71
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 72
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 73
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
0,184 ms 12,3 ms
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 74
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 75
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Reconditionnement du fichier :
1. taux d'occupation favorable (70-80) uniforme (pour toutes les pages)
2. élimination des ruptures de séquences (r = 0)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 76
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Compléments
1. Adaptation aisée au cas où K n'est pas un identifiant (mais rarement appliqué)
2. Le fichier de base est instable : l'adresse d'un enregistrement peut évoluer au cours du
temps
3. Application intéressante aux fichiers comportant des enregistrements de plusieurs
types.
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 77
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 78
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 79
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
séquentiel
calculé
indexé
page [p]
k f k
conversion k p conversion k p
mémorisée calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 80
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
à démontrer !
L'organisation calculée d'un fichier permet
1. la lecture séquentielle non ordonnée des enregistrements du fichier de
base
2. l'accès rapide à l'enregistrement possédant une valeur de clé K = k
4. l'insertion rapide d'un enregistrement de clé K
5. la modification rapide de la valeur de K d'un enregistrement
6. la suppression rapide d'un enregistrement
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 81
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Hypothèses simplificatrices
1. La clé K est un identifiant du fichier
2. Le fichier contient des enregistrements d'un seul type
3. Les enregistrements sont de taille fixe
4. Un enregistrement est entièrement compris dans une page
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 82
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Nature de la fonction f ?
K : valeurs de l'identifiant
p : adresse de la page de l'enregistrement k K
Mrpp : capacité d'une page
Cas 1
K = {0, 1, 2, 3, ..., 99998, 99999}
p = k / Mrpp
Cas 2
K = {1, 3, 5, 7, ..., 99997, 99999}
p = ((k - 1)/2) / Mrpp
Cas 3
K = {1, 3, 4, 87, 162, 163, 164, 290, 1035, ..., 99991}
p= ?
Cas 4
K = {'Anselme', 'Bernard', 'Catherine', 'Eve', ..., 'Xavier'}
p= ?
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 83
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Nature de la fonction f ?
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 84
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 85
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
f(k) = f3(f2(f1k)))
k = "Charles" numérisation
hachage
cadrage p = 1423
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 86
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
• numérisation f1
Codes ASCII des caractères de "Charles" = chaîne de 56 bits :
01000011 01101000 01100001 01110010 01101100 01100101 01110011
XOR entre les 32 premiers bits et les 24 suivants étendus à 32 bits par des 0
On obtient le nombre 0010 1111 0000 1101 0001 0010 0111 0010 = 789385842
On a donc f1("Charles") = 789385842.
• hachage f2
Technique du pliage : f2(789385842) = 78938 + 02485 = 81423.
• cadrage f3
Ajustement à un espace de [0, 4999] pages : f3(81423) = 81423 mod 5000 = 1423.
On a donc :
f("Charles") = 1423
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 87
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Que faire d'un enregistrement dont l'adresse p désigne une page pleine ?
Réponse : on le stocke dans une page dont l'adresse p' est dérivable de p.
Exemple : on le stocke dans une page qui possède assez d'espace pour
accueillir l'enregistrement et dont l'adresse p' est stockée dans
la page [p].
On distingue donc : l’adresse de base p
l’adresse de stockage p’
espace
espace de base
de débordement
(Npb pages)
(extensible)
f(k)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 88
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 89
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
On définit :
ch = Nrpp / Mrpp, le taux de chargement du fichier (typiquement de 0,5 à 2)
On a : Nrpp = ch x Mrpp
Nr = ch x Mrpp x Npb
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 90
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 91
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
ap 2,60
2,40
2,20
2,00 Mrpp
50
5
1,80 10
15
1,62 5 20
1,60
25
30
1,40
35
40
1,20 45
50
1,00
0,5 0,6 0,7 0,8 0,9 1 1,1 1,2 1,3 1,4 1,5 1,6 1,7 1,8 1,9 2 ch
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 92
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 93
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
tlsf = Np x tls1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 94
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
nlp 1,7
1,6
1,5
Mrpp
1,4
5
5 10
1,3 15
50 20
25
1,2
30
1,135 35
1,1 40
45
50
1,0
0,5 0,6 0,7 0,8 0,9 1 1,1 1,2 1,3 1,4 1,5 1,6 1,7 1,8 1,9 2 ch
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 95
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Exemple
L'abaque nous donne, pour Mrpp = 20 et ch = 1,1 nlp = 1,135
On a donc : tlk1 = nlp x tla1 = 14 ms
Vitesse de lecture : 71 enreg./s
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 96
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Procédure de base :
Lecture séquentielle du fichier ancien et insertion de chaque enregistrement dans le
nouveau selon le procédé décrit plus haut.
Coût insertion 2 x tla1 x Nr (14,6 ms par enregistrement) + lecture
Procédure optimisée (à démontrer) :
A partir du fichier ancien, on constitue un fichier séquentiel augmenté d'un champ,
l'adresse de chaque enregistrement dans le nouvel espace de base.
On trie le fichier selon ce nouveau champ.
On procède comme ci-dessus avec le fichier trié.
Coût insertion 2 x tls1 x Nr (0,368 ms par enregistrement) + lecture + écriture +tri
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 97
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 98
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 99
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Index secondaire
1. identifiant ou non identifiant
2. de 0 à N index secondaires par fichier
3. la structure du fichier est indépendante de la présence d'un index
secondaire
4. facile d'ajouter et de supprimer un index secondaire au vol
5. volume plus important, moins bonnes performances
6. Certains SGBD n'offrent que des index secondaires
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 100
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Rappel
Index (dans un livre)
B
base de données active 167 les termes de la lettre B
base de données temporelles 153, 170
between 67
C
cardinalité d’attribut 182
cardinalité d’un role 187
catalogue 147, 169
cellules 280
Chen 29, 205
chimpanzé 364
circuit de dépendances 312, 392
classe d’objets 201 le terme clé étrangère
classe fonctionnelle 184, 185, 242, 245
numéros des pages
clé étrangère 34, 44, 77, 81, 156
close 145 qui contiennent ce terme
coalescing 155
COBOL 18, 143
Codd 27
codomaine 351
colonne 32, 35, 44
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 101
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Rappel
Index (dans une base de données)
01
02
03
04
05
Bruxelles 11
06
Genève 03 07
Lille 12 08
Namur 01 06 14 15 09
Paris 16 10
Poitiers 02 07 09 11
Toulouse 04 05 08 10 13 12
13
14
15
16
numéros des lignes dont
LOCALITE = 'Toulouse'
chaque ligne possède un numéro unique;
les valeurs de LOCALITE,
l'accès à une ligne de numéro donné est très rapide
triées par ordre alphabétique
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 102
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
données de base
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 103
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 104
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 105
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Toulouse
Toulouse
Toulouse
une entrée théorique Toulouse Toulouse
Toulouse
Toulouse
Toulouse
Toulouse Toulouse
Toulouse
Toulouse
Toulouse
Toulouse
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 106
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Index (LOCALITE)
Bruxelles 1000000000000000
Genève 0100000000000000
Lille 0001000000000000
Namur 0010111000000000
Paris 0000000010000000
Poitiers 0000000101101000
Toulouse 0000000000010111
Chaînes très longues compression par technique sans pertes (LZN par exemple)
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 107
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
B512 Lille
B2
B1
B062 GOFFIN
K111 VANBIST
Namur
Lille
B2
B1
éviter l'accès au fichier de base.
C003 Namur C1 C123 MERCER Namur C1
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 108
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 109
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 110
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Proximité logique :
• enregistrements d'un fichier lus successivement
• enregistrements lus dans un certain ordre
• enregistrements couplés par des associations
Proximité physique :
• enregistrements dans la même page
• enregistrements dans des pages successives
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 111
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 112
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 113
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 114
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 115
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Le clustering index
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 116
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Le clustering index
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 117
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Le cluster
• basé sur une colonne (ou des colonnes) K commune(s) à une ou plusieurs
tables;
• les lignes de même valeur de K sont rangées dans la même page; si
nécessaire dans des pages successives d'une chaîne de pages
• on associe un index au cluster
30177
30178 30178 K111 22/12/2008 30178 CS464 0025
30179
30179 C400 22/12/2008 30179 CS262 0060 30179 PA60 0020
30182
30182 S127 23/12/2008 30182 PA60 0030
30184
30185 30184 C400 23/12/2008 30184 CS464 0120 30184 PA45 0020
30186 30185 F011 02/01/2009 30185 CS464 0260 30185 PA60 0015 30185 PS222 0600
30187
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 118
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
Le cluster
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 119
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 120
1. Motivation et introduction 5. Les SGBD ... 4.8 Les index secondaires
2. Concepts des bases de données 4.5 Les index 4.9 Les techniques d'agrégation
3. Modèle relationnel et normalisation 4.6 Organisation séquent. indexée 4.10 Un exemple : SQL Server
4. Implémentation des structures de données 4.7 Organisation calculée
voir annexe 4
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 121
1. Motivation et introduction 5. Les SGBD
2. Concepts des bases de données
3. Modèle relationnel et normalisation
4. Implémentation des structures de données
Fin du module 4
azerty
I. Concepts des bases de données Bases de données J-L Hainaut 2022 122
azerty Bases de données J-L Hainaut 2022 123