← Back to team overview

maria-developers team mailing list archive

WL#128 New (by Igor): Implement Block Nested Loop Hash Join

 

-----------------------------------------------------------------------
                              WORKLOG TASK
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
TASK...........: Implement Block Nested Loop Hash Join
CREATION DATE..: Wed, 04 Aug 2010, 18:56
SUPERVISOR.....: Monty
IMPLEMENTOR....: Igor
COPIES TO......: Igor Mneptok Monty Psergey Sanja Sergei Timour
CATEGORY.......: Server-BackLog
TASK ID........: 128 (http://askmonty.org/worklog/?tid=128)
VERSION........: Server-5.3
STATUS.........: Assigned
PRIORITY.......: 60
WORKED HOURS...: 0
ESTIMATE.......: 0 (hours remain)
ORIG. ESTIMATE.: 0

PROGRESS NOTES:



DESCRIPTION:

Block Nested Loop Hash (BNLH) Join Algorithm (also known as Classic Hash Join
Algorithm) can be applied when the join condition contains conjunctive equality
predicates over some attributes of the joined tables.
The algorithm employs the same logical schema as Block Nested Loop Join Algorithm.
A portions of rows of the left join operand fit into a preallocated join buffer
are put into the buffer. A hash table over the equi-join attributes for the rows
in the buffer is built. Then the table of the second operand is scanned and for
each row from this table the  matching rows in the join buffer are found using
the built hash table. These actions are repeated until there is no more rows can
be supplied by the first operand.
The algorithm requires as many scans of the second table as many times the join
buffer is refilled.


ESTIMATED WORK TIME

ESTIMATED COMPLETION DATE
-----------------------------------------------------------------------
WorkLog (v4.0.0)