public class HashJoinMemoryCalculatorImpl extends Object implements HashJoinMemoryCalculator
| Modifier and Type | Class and Description |
|---|---|
static class |
HashJoinMemoryCalculatorImpl.BuildSidePartitioningImpl
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.
|
static class |
HashJoinMemoryCalculatorImpl.NoopBuildSidePartitioningImpl |
static class |
HashJoinMemoryCalculatorImpl.NoopPostBuildCalculationsImpl |
static class |
HashJoinMemoryCalculatorImpl.PostBuildCalculationsImpl
In this state, we need to make sure there is enough room to spill probe side batches, if
spilling is necessary.
|
HashJoinMemoryCalculator.BatchStat, HashJoinMemoryCalculator.BuildSidePartitioning, HashJoinMemoryCalculator.PartitionStat, HashJoinMemoryCalculator.PartitionStatSet, HashJoinMemoryCalculator.PostBuildCalculations| Constructor and Description |
|---|
HashJoinMemoryCalculatorImpl(double safetyFactor,
double fragmentationFactor,
double hashTableDoublingFactor,
String hashTableCalculatorType,
boolean semiJoin) |
| Modifier and Type | Method and Description |
|---|---|
HashJoinState |
getState()
The current
HashJoinState corresponding to this calculator. |
void |
initialize(boolean doMemoryCalculation) |
HashJoinMemoryCalculator.BuildSidePartitioning |
next()
Signifies that the current state is complete and returns the next
HashJoinStateCalculator. |
public HashJoinMemoryCalculatorImpl(double safetyFactor,
double fragmentationFactor,
double hashTableDoublingFactor,
String hashTableCalculatorType,
boolean semiJoin)
public void initialize(boolean doMemoryCalculation)
initialize in interface HashJoinMemoryCalculatorpublic HashJoinMemoryCalculator.BuildSidePartitioning next()
HashJoinStateCalculatorHashJoinStateCalculator.
Returns null in the case where there is no next state.next in interface HashJoinStateCalculator<HashJoinMemoryCalculator.BuildSidePartitioning>HashJoinStateCalculator or null if this was the last state.public HashJoinState getState()
HashJoinStateCalculatorHashJoinState corresponding to this calculator.getState in interface HashJoinStateCalculator<HashJoinMemoryCalculator.BuildSidePartitioning>Copyright © 2021 The Apache Software Foundation. All rights reserved.