|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2011 Messages : 54 ![]() |
Salut
svp, je voudrai savoir le cout en nombre d'ES et en temps CPU des algorithmes de jointure : nested-loop , tri-fusion et hash-join dans les bases des données orientées objet. Merci d'avance. |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 12 089 ![]() |
Soit n et m les cardinalité des tables en jeu des deux côté de la jointure...
tri fusion = n + m si les jointures sont faites sur des clefs indexées (cas de la clef primaire, et doit normalement être le cas de la clef étrangère), donc, algo de cout minimal nested loop = n x m, c'est à dire le pire si n et m sont >> 1 hash-join : cout très difficile à déterminer, mais entre les deux en général : 1) cout du calcul de la transformation de la données en clef de hachage 2) cout de placement de la clef hachée dans un "baquet" 3) cout de rapprochement des "baquets" (voisi du tri fusion) 4) cout de recherche d'une valeur à l'intérieur du baquet A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
30
|
Copyright © 2000-2013 - www.developpez.com