public abstract class VectorMapJoinOuterGenerateResultOperator extends VectorMapJoinGenerateResultOperator
Operator.OperatorFunc, Operator.State
Modifier and Type | Field and Description |
---|---|
protected int[] |
allMatchs |
protected int[] |
equalKeySeriesAllMatchIndices |
protected int[] |
equalKeySeriesDuplicateCounts |
protected int[] |
equalKeySeriesHashMapResultIndices |
protected boolean[] |
equalKeySeriesIsSingleValue |
protected VectorMapJoinHashMapResult[] |
hashMapResults |
protected int[] |
inputSelected |
protected int[] |
merged |
protected int[] |
noMatchs |
protected int[] |
nonSpills |
protected int[] |
spillHashMapResultIndices |
protected int[] |
spills |
batchCounter
bigTableByteColumnVectorColumns, bigTableFilterExpressions, bigTableKeyColumnMap, bigTableKeyExpressions, bigTableKeyTypeNames, bigTableOuterKeyMapping, bigTableOuterKeyOutputVectorColumns, bigTableRetainedMapping, bigTableRetainedVectorCopy, bigTableValueColumnMap, bigTableValueExpressions, bigTableValueTypeNames, bigTableVectorCopyOuterKeys, isOuterJoin, needCommonSetup, needHashTableSetup, outputProjection, outputTypeNames, overflowBatch, overflowRepeatedThreshold, posSingleVectorMapJoinSmallTable, smallTableByteColumnVectorColumns, smallTableMapping, smallTableOutputVectorColumns, smallTableVectorDeserializeRow, spillReplayBatch, taskName, useOverflowRepeatedThreshold, vContext, vectorMapJoinHashTable, vOutContext
firstSmallTable, hashMapRowGetters, loader, mapJoinTables, spilledMapJoinTables
emptyList, joinKeys, joinKeysObjectInspectors, posBigTable
alias, aliasFilterTags, condn, countAfterReport, dummyObj, dummyObjVectors, filterMaps, filterTags, forwardCache, heartbeatInterval, intermediate, joinFilterObjectInspectors, joinFilters, joinValues, joinValuesObjectInspectors, joinValuesStandardObjectInspectors, noOuterJoin, NOTSKIPBIGTABLE, nullsafes, numAliases, offsets, order, rowContainerStandardObjectInspectors, skipVectors, spillTableDesc, totalSz
childOperators, childOperatorsArray, childOperatorsTag, colExprMap, conf, CONTEXT_NAME_KEY, done, groupKeyObject, HIVECOUNTERCREATEDFILES, HIVECOUNTERFATAL, id, inputObjInspectors, isLogDebugEnabled, isLogInfoEnabled, isLogTraceEnabled, operatorId, out, outputObjInspector, parentOperators, PLOG, reporter, state, statsMap
Constructor and Description |
---|
VectorMapJoinOuterGenerateResultOperator() |
VectorMapJoinOuterGenerateResultOperator(VectorizationContext vContext,
OperatorDesc conf) |
Modifier and Type | Method and Description |
---|---|
protected void |
commonSetup(VectorizedRowBatch batch) |
void |
finishOuter(VectorizedRowBatch batch,
int allMatchCount,
int equalKeySeriesCount,
boolean atLeastOneNonMatch,
boolean inputSelectedInUse,
int inputLogicalSize,
int spillCount,
int hashMapResultCount)
Generate the outer join output results for one vectorized row batch.
|
void |
finishOuterRepeated(VectorizedRowBatch batch,
JoinUtil.JoinResult joinResult,
VectorMapJoinHashMapResult hashMapResult,
boolean someRowsFilteredOut,
boolean inputSelectedInUse,
int inputLogicalSize)
Generate the outer join output results for one vectorized row batch with a repeated key.
|
protected void |
generateOuterNulls(VectorizedRowBatch batch,
int[] noMatchs,
int noMatchSize)
Generate the non matching outer join output results for one vectorized row batch.
|
protected void |
generateOuterNullsRepeatedAll(VectorizedRowBatch batch)
Generate the non-match outer join output results for the whole repeating vectorized
row batch.
|
protected void |
outerPerBatchSetup(VectorizedRowBatch batch)
Do the per-batch setup for an outer join.
|
closeOp, forwardBigTableBatch, forwardOverflow, generateHashMapResultMultiValue, generateHashMapResultRepeatedAll, generateHashMapResultSingleValue, intArrayToRangesString, longArrayToRangesString, performValueExpressions, reloadHashTable, reProcessBigTable, spillBatchRepeated, spillHashMapBatch, verifyMonotonicallyIncreasing
determineCommonInfo, displayBatchColumns, getHashTableLoader, getOuputVectorizationContext, getType, initializeOp, loadHashTable, setupOverflowBatch, setupVOutContext
cleanUpInputFileChangedOp, completeInitializationOp, endGroup, generateMapMetaData, getName, getOperatorName, getRefKey, getValueObjectInspectors, process, setMapJoinKey, spillBigTableRow, startGroup
checkAndGenObject, getFilteredValue, getFilterTag, getNextSize, getPosToAliasMap, hasFilter, internalForward, opAllowedAfterMapJoin, opAllowedBeforeMapJoin, reportProgress, setPosToAliasMap
acceptLimitPushdown, allInitializedParentsAreClosed, areAllParentsInitialized, augmentPlan, cleanUpInputFileChanged, clone, cloneOp, cloneRecursiveChildren, close, columnNamesRowResolvedCanBeObtained, createDummy, defaultEndGroup, defaultStartGroup, dump, dump, flush, forward, getAdditionalCounters, getChildOperators, getChildren, getColumnExprMap, getConf, getConfiguration, getDone, getExecContext, getGroupKeyObject, getIdentifier, getInputObjInspectors, getNextCntr, getNumChild, getNumParent, getOperatorId, getOpTraits, getOutputObjInspector, getParentOperators, getSchema, getStatistics, getStats, initEvaluators, initEvaluators, initEvaluatorsAndReturnStruct, initialize, initialize, initializeChildren, initializeLocalWork, initOperatorId, isUseBucketizedHiveInputFormat, jobClose, jobCloseOp, logStats, opAllowedBeforeSortMergeJoin, opAllowedConvertMapJoin, passExecContext, preorderMap, processGroup, removeChild, removeChildAndAdoptItsChildren, removeChildren, removeParent, replaceChild, replaceParent, reset, resetId, resetStats, setAlias, setChildOperators, setColumnExprMap, setConf, setDone, setExecContext, setGroupKeyObject, setId, setInputContext, setInputObjInspectors, setOperatorId, setOpTraits, setOutputCollector, setParentOperators, setReporter, setSchema, setStatistics, setUseBucketizedHiveInputFormat, supportAutomaticSortMergeJoin, supportSkewJoinOptimization, supportUnionRemoveOptimization, toString, toString
protected transient VectorMapJoinHashMapResult[] hashMapResults
protected transient int[] inputSelected
protected transient int[] allMatchs
protected transient int[] equalKeySeriesHashMapResultIndices
protected transient int[] equalKeySeriesAllMatchIndices
protected transient boolean[] equalKeySeriesIsSingleValue
protected transient int[] equalKeySeriesDuplicateCounts
protected transient int[] spills
protected transient int[] spillHashMapResultIndices
protected transient int[] nonSpills
protected transient int[] noMatchs
protected transient int[] merged
public VectorMapJoinOuterGenerateResultOperator()
public VectorMapJoinOuterGenerateResultOperator(VectorizationContext vContext, OperatorDesc conf) throws HiveException
HiveException
protected void commonSetup(VectorizedRowBatch batch) throws HiveException
commonSetup
in class VectorMapJoinGenerateResultOperator
HiveException
protected void outerPerBatchSetup(VectorizedRowBatch batch)
public void finishOuter(VectorizedRowBatch batch, int allMatchCount, int equalKeySeriesCount, boolean atLeastOneNonMatch, boolean inputSelectedInUse, int inputLogicalSize, int spillCount, int hashMapResultCount) throws IOException, HiveException
batch
- The big table batch with any matching and any non matching rows both as
selected in use.allMatchCount
- Number of matches in allMatchs.equalKeySeriesCount
- Number of single value matches.atLeastOneNonMatch
- Whether at least one row was a non-match.inputSelectedInUse
- A copy of the batch's selectedInUse flag on input to the process method.inputLogicalSize
- The batch's size on input to the process method.spillCount
- Number of spills in spills.hashMapResultCount
- Number of entries in hashMapResults.IOException
HiveException
protected void generateOuterNulls(VectorizedRowBatch batch, int[] noMatchs, int noMatchSize) throws IOException, HiveException
batch
- The big table batch with any matching and any non matching rows both as
selected in use.noMatchs
- A subset of the rows of the batch that are non matches.noMatchSize
- Number of non matches in noMatchs.IOException
HiveException
public void finishOuterRepeated(VectorizedRowBatch batch, JoinUtil.JoinResult joinResult, VectorMapJoinHashMapResult hashMapResult, boolean someRowsFilteredOut, boolean inputSelectedInUse, int inputLogicalSize) throws IOException, HiveException
batch
- The big table batch with any matching and any non matching rows both as
selected in use.joinResult
- The hash map lookup result for the repeated key.hashMapResults
- The array of all hash map results for the batch.someRowsFilteredOut
- Whether some rows of the repeated key batch were knocked out by the filter.inputSelectedInUse
- A copy of the batch's selectedInUse flag on input to the process method.inputLogicalSize
- The batch's size on input to the process method.scratch1
- Pre-allocated storage to internal use.scratch2
- Pre-allocated storage to internal use.IOException
HiveException
protected void generateOuterNullsRepeatedAll(VectorizedRowBatch batch) throws HiveException
batch
- The big table batch.HiveException
Copyright © 2017 The Apache Software Foundation. All rights reserved.