Package org.apache.drill.exec.physical.impl.join
package org.apache.drill.exec.physical.impl.join
-
ClassDescriptionAbstractHashBinaryRecordBatch<T extends PhysicalOperator>Base class for the runtime execution implementation of the Hash-Join and Hash-SetOp operatorThis holds information about the spilled partitions for the build and probe side.This class predicts the sizes of batches given an input batch.A factory for creating
BatchSizePredictor
s.Implements the runtime execution for the Hash-Join operator supporting INNER, LEFT OUTER, RIGHT OUTER, and FULL OUTER joinsThis calculator class is used when the Hash-Join_helper is not used (i.e., return size of zero)This class is responsible for managing the memory calculations for the HashJoin operator.The interface representing theHashJoinStateCalculator
corresponding to theHashJoinState.BUILD_SIDE_PARTITIONING
state.This class represents the memory size statistics for an entire set of partitions.The interface representing theHashJoinStateCalculator
corresponding to theHashJoinState.POST_BUILD_CALCULATIONS
state.At this point we need to reserve memory for the following: An incoming batch An incomplete batch for each partition If there is available memory we keep the batches for each partition in memory.In this state, we need to make sure there is enough room to spill probe side batches, if spilling is necessary.HashJoinStateCalculator<T extends HashJoinStateCalculator<?>>AHashJoinStateCalculator
is a piece of code that compute the memory requirements for one of the states in theHashJoinState
enum.Maintain join state.Merge Join implementation using RecordIterator.RecordBatch implementation for the lateral join operator.A join operator that merges two sorted streams using a record iterator.Interface for the nested loop join operator.ProbeTemplate<T extends PhysicalOperator>Interface for a row key joinEnum for RowKeyJoin internal state.