Class HashJoinMechanicalMemoryCalculator.MechanicalBuildSidePartitioning
java.lang.Object
org.apache.drill.exec.physical.impl.join.HashJoinMechanicalMemoryCalculator.MechanicalBuildSidePartitioning
- All Implemented Interfaces:
HashJoinMemoryCalculator.BuildSidePartitioning,HashJoinStateCalculator<HashJoinMemoryCalculator.PostBuildCalculations>
- Enclosing class:
HashJoinMechanicalMemoryCalculator
public static class HashJoinMechanicalMemoryCalculator.MechanicalBuildSidePartitioning
extends Object
implements HashJoinMemoryCalculator.BuildSidePartitioning
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlonglongintgetState()The currentHashJoinStatecorresponding to this calculator.voidinitialize(boolean autoTune, boolean reserveHash, RecordBatch buildSideBatch, RecordBatch probeSideBatch, Set<String> joinColumns, boolean probeEmpty, long memoryAvailable, int initialPartitions, int recordsPerPartitionBatchBuild, int recordsPerPartitionBatchProbe, int maxBatchNumRecordsBuild, int maxBatchNumRecordsProbe, int outputBatchSize, double loadFactor) next()Signifies that the current state is complete and returns the nextHashJoinStateCalculator.voidsetPartitionStatSet(HashJoinMemoryCalculator.PartitionStatSet partitionStatSet) boolean
-
Constructor Details
-
MechanicalBuildSidePartitioning
public MechanicalBuildSidePartitioning(int maxNumInMemBatches)
-
-
Method Details
-
initialize
public void initialize(boolean autoTune, boolean reserveHash, RecordBatch buildSideBatch, RecordBatch probeSideBatch, Set<String> joinColumns, boolean probeEmpty, long memoryAvailable, int initialPartitions, int recordsPerPartitionBatchBuild, int recordsPerPartitionBatchProbe, int maxBatchNumRecordsBuild, int maxBatchNumRecordsProbe, int outputBatchSize, double loadFactor) - Specified by:
initializein interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
setPartitionStatSet
- Specified by:
setPartitionStatSetin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
getNumPartitions
public int getNumPartitions()- Specified by:
getNumPartitionsin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
getBuildReservedMemory
public long getBuildReservedMemory()- Specified by:
getBuildReservedMemoryin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
getMaxReservedMemory
public long getMaxReservedMemory()- Specified by:
getMaxReservedMemoryin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
shouldSpill
public boolean shouldSpill()- Specified by:
shouldSpillin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
makeDebugString
- Specified by:
makeDebugStringin interfaceHashJoinMemoryCalculator.BuildSidePartitioning
-
next
Description copied from interface:HashJoinStateCalculatorSignifies that the current state is complete and returns the nextHashJoinStateCalculator. Returns null in the case where there is no next state.- Specified by:
nextin interfaceHashJoinStateCalculator<HashJoinMemoryCalculator.PostBuildCalculations>- Returns:
- The next
HashJoinStateCalculatoror null if this was the last state.
-
getState
Description copied from interface:HashJoinStateCalculatorThe currentHashJoinStatecorresponding to this calculator.- Specified by:
getStatein interfaceHashJoinStateCalculator<HashJoinMemoryCalculator.PostBuildCalculations>- Returns:
-