The Block-based Nested-loop Join Algorithm