public abstract class VectorMapJoinOptimizedHashTable extends Object implements VectorMapJoinHashTable, VectorMapJoinBytesHashTable
Modifier and Type | Class and Description |
---|---|
static class |
VectorMapJoinOptimizedHashTable.SerializedBytes |
Modifier and Type | Field and Description |
---|---|
protected ReusableGetAdaptorDirectAccess |
adapterDirectAccess |
protected MapJoinTableContainerDirectAccess |
containerDirectAccess |
protected MapJoinTableContainer |
originalTableContainer |
Constructor and Description |
---|
VectorMapJoinOptimizedHashTable(MapJoinTableContainer originalTableContainer,
MapJoinTableContainer.ReusableGetAdaptor hashMapRowGetter) |
Modifier and Type | Method and Description |
---|---|
boolean |
containsLongKey(long currentKey) |
MatchTracker |
createMatchTracker() |
VectorMapJoinNonMatchedIterator |
createNonMatchedIterator(MatchTracker matchTracker) |
JoinUtil.JoinResult |
doLookup(byte[] keyBytes,
int keyOffset,
int keyLength,
BytesBytesMultiHashMap.Result bytesBytesMultiHashMapResult,
VectorMapJoinHashTableResult hashTableResult,
MatchTracker matchTracker) |
long |
getEstimatedMemorySize()
Returns estimated memory size based
JavaDataModel |
void |
putRow(long hashCode,
org.apache.hadoop.io.BytesWritable currentKey,
org.apache.hadoop.io.BytesWritable currentValue) |
protected void |
putRowInternal(org.apache.hadoop.io.BytesWritable key,
org.apache.hadoop.io.BytesWritable value) |
int |
size()
Get hash table size
|
int |
spillPartitionId() |
protected final MapJoinTableContainer originalTableContainer
protected final MapJoinTableContainerDirectAccess containerDirectAccess
protected final ReusableGetAdaptorDirectAccess adapterDirectAccess
public VectorMapJoinOptimizedHashTable(MapJoinTableContainer originalTableContainer, MapJoinTableContainer.ReusableGetAdaptor hashMapRowGetter)
public VectorMapJoinNonMatchedIterator createNonMatchedIterator(MatchTracker matchTracker)
createNonMatchedIterator
in interface VectorMapJoinHashTable
public int spillPartitionId()
spillPartitionId
in interface VectorMapJoinHashTable
public void putRow(long hashCode, org.apache.hadoop.io.BytesWritable currentKey, org.apache.hadoop.io.BytesWritable currentValue) throws SerDeException, HiveException, IOException
putRow
in interface VectorMapJoinHashTable
hashCode
- current HashCode to avoid re-computationcurrentKey
- The current Key in bytescurrentValue
- The current Value in bytesSerDeException
HiveException
IOException
public boolean containsLongKey(long currentKey)
containsLongKey
in interface VectorMapJoinHashTable
currentKey
- The key to check for existence.protected void putRowInternal(org.apache.hadoop.io.BytesWritable key, org.apache.hadoop.io.BytesWritable value) throws SerDeException, HiveException, IOException
SerDeException
HiveException
IOException
public JoinUtil.JoinResult doLookup(byte[] keyBytes, int keyOffset, int keyLength, BytesBytesMultiHashMap.Result bytesBytesMultiHashMapResult, VectorMapJoinHashTableResult hashTableResult, MatchTracker matchTracker)
public int size()
VectorMapJoinHashTable
size
in interface VectorMapJoinHashTable
public long getEstimatedMemorySize()
MemoryEstimate
JavaDataModel
getEstimatedMemorySize
in interface MemoryEstimate
public MatchTracker createMatchTracker()
createMatchTracker
in interface VectorMapJoinHashTable
Copyright © 2023 The Apache Software Foundation. All rights reserved.