Nested Loop Join
Basic strategy (R.a ⋈ S.b):
Result = {}
for each page i in R {
pageR = getPage(R,i)
for each page j in S {
pageS = getPage(S,j)
for each pair of tuples tR,tS
from pageR,pageS {
if (tR.a == tS.b)
Result = Result ∪ (tR:tS)
} } }
|
Needs input buffers for R and S, output buffer for "joined" tuples
Terminology: R is outer relation, S is inner relation
|