L3 Info : SGBD
 
◃  Ch. 12 Implantation et algorithmique des SGBDR  ▹
 

Jointure avec index

  • Joint utilisant une table de hachage : on construit une table de hachage pour r2 sur les attributs communs X. On parcourt r1 et pour chaque tuple de r1 (et sa valeur pour X), on va chercher dans la table de hachage les tuples de r2 qui ont la même valeur pour X.
  • Complexité : O(nr1 + nr2 ), pour autant que nr2/nbVal(X,r2) soit borné pour les attributs communs X.
  • Joint en présence d’un index : Supposons que r2 possède un index pour les attributs communs X. On parcourt r1 et pour chaque tuple de r1 (et sa valeur pour X), on va chercher dans r2 les tuples qui ont la même valeur pour X.
  • Complexité : O(nr1 (1 + log(nr2 ))), pour autant que nr2/nbVal(X,r2) soit borné pour les attributs communs X.