Faculté de Technologie
Département d’Informatique
Module : Administration et sécurité des BDD
Exposé de : Index Hachage
Réaliser par:
NOM 1
NOM 2
Plan de Travail
1-Qu’est ce qu’un index de BDD?
2-Comment créer un index ?
3-Index par Hachage
4-Principe de fonctionnement d’index par hachage
Qu’est ce qu’un index de BDD?
1- le moteur de SGBD utilise les index pour rechercher
rapidement les données.
2-Si les index n’existent pas, le moteur SGBD parcourt tous les
enregistrements de la table
3-Limpact des index sur les requêtes d’écriture est moins
important.
Exemple
Soit la requete suivant : Quelle est la catégorie ayant l’id 9?
Cas ou l’index n’existe pas.
Index ID Catégorie
produit
1 4 Pc portable
2 10 Imprimante
3 2 Smartphone
4
1 Accessoires
9
3 Operations 10
15 Serveur
15 3 Tablette
9 Stokage
Index par Hachage
1. Index par hachage est très performant pour les recherches
d’egalité
2. Index par hachage ne fonctionne pas avec les recherche par
intervalle et pour les inégalité.
3. Index par hachage permet un accès direct à un enregistrement
dans le cas des valeurs uniques.
4. Index par hachage est préconisé pour les valeurs uniques.
Principe de fonctionnement d’index par
hachage
• Référence • L’adresse
de produit physique
Lenovo i7 1 Acer i5 PC PORTABLE Acer i5
Acer i7
• H(Acer i5)=3
2 Lenovo i7 PC PORTABLE i7
• H(Lenovo i7)=1
Acer
Acer i5
i5 • H(HP550)=5 3 HP 550 PC PORTABLE HP
Asus 999 4 Acer i7 PC PORTABLE Acer i7
• H(Aceri7)=2
HP 550 5 Asus 999 PC PORTABLE Asus
• H(Asus999)=4
• Référence • L’adresse
de produit physique
Lenovo i7 1 Acer i5 PC PORTABLE Acer i5
Acer i7 2 Lenovo i7 PC PORTABLE i7
Acer i5 3 HP 550 PC PORTABLE HP
Asus 999 4 Acer i7 PC PORTABLE Acer i7
HP 550 5 Asus 999 PC PORTABLE Asus
Exemple de recherche :
• Quel est le produit ayant la référence de produit:Acer i7
• H(Aceri7)=2
Lenovo i7 1 Acer i5 PC PORTABLE Acer i5
Acer i7 2 Lenovo i7 PC PORTABLE i7
Acer i5 3 HP 550 PC PORTABLE HP
Asus 999 4 Acer i7 PC PORTABLE Acer i7
HP 550 5 Asus 999 PC PORTABLE Asus
Exemple de recherche
• Construct a hash index for the following table by using the following hash function :
Block number = ( Weight + ID ) – 49
ID NAME WEIGHT
1 Zaid 57
5 Aseel 50
2 Luna 47
9 Basem 46
Block 0
2 47
Block 1
Exemple de recherche
Block 2
Block 3
Block 4
ID NAME WEIGHT
Block 5
1 Zaid 57
Block 6
5 50 5 Aseel 50
9 40
2 Luna 47
…
9 Basem 46
Block 9
1 57
References :
• Coursaline.com
• PostgreSQL
• MIT OPEN COURSEWAVE
• Utechnology.edu.iq