Class PhysicalOpHashJoin2

java.lang.Object
se.liu.ida.hefquin.engine.queryplan.physical.impl.BaseForPhysicalOpBinaryJoin
se.liu.ida.hefquin.engine.queryplan.physical.impl.PhysicalOpHashJoin2
All Implemented Interfaces:
QueryPlanOperator, BinaryPhysicalOp, BinaryPhysicalOpForLogicalOp, PhysicalOperator, PhysicalOperatorForLogicalOperator

public class PhysicalOpHashJoin2 extends BaseForPhysicalOpBinaryJoin
A physical operator that implements the hash join algorithm to perform a join of two sequences of input solution mappings (produced by the two sub-plans under this operator). The algorithm builds a hash table with the solution mappings of the second input sequence (using the values that they have for the join variables to decide where to place them in the hash table) and, thereafter, probes the hash table to find join partners for each of the solution mappings of the first input sequence.

The actual algorithm of this operator is implemented in the ExecOpHashJoin2 class.

In addition to this class, we also have PhysicalOpHashJoin1 which does essentially the same thing but builds the has table over the first input. However, in contrast to this class, that other one does not support outer-join semantics.