Une jointure par boucle imbriquée est un algorithme naïf qui joint deux relations en utilisant deux boucles imbriquées . Les opérations de jointure sont importantes pour la gestion des bases de données .
Algorithme
Deux relations
L'algorithme nested_loop_join est le suivant : pour chaque tuple r dans R , pour chaque tuple s dans S , si r et s satisfont la condition de jointure, alors produire le tuple < r , s >
Cet algorithme impliquera n r *b s + b r transferts de blocs et n r +b r recherches, où b r et b s sont le nombre de blocs dans les relations R et S respectivement, et n r est le nombre de tuples dans la relation R.
L'algorithme s'exécute dans
L' algorithme de jointure de boucles imbriquées par blocs est une généralisation de l'algorithme de boucles imbriquées simples qui tire parti de la mémoire supplémentaire pour réduire le nombre d'itérations.
variante de jointure d'index
Si la relation interne possède un index sur les attributs utilisés dans la jointure, alors la jointure par boucle imbriquée naïve peut être remplacée par une jointure par index.
L'algorithme index_join est le suivant : pour chaque tuple r dans R , pour chaque tuple s dans S dans l'index de recherche, produire le tuple < r , s >
La complexité temporelle de cette variante s'améliore par rapport à