org.apache.hadoop.hive.ql.optimizer
Class ConvertJoinMapJoin
java.lang.Object
org.apache.hadoop.hive.ql.optimizer.ConvertJoinMapJoin
- All Implemented Interfaces:
- NodeProcessor
public class ConvertJoinMapJoin
- extends Object
- implements NodeProcessor
ConvertJoinMapJoin is an optimization that replaces a common join
(aka shuffle join) with a map join (aka broadcast or fragment replicate
join when possible. Map joins have restrictions on which joins can be
converted (e.g.: full outer joins cannot be handled as map joins) as well
as memory restrictions (one side of the join has to fit into memory).
ConvertJoinMapJoin
public ConvertJoinMapJoin()
process
public Object process(Node nd,
Stack<Node> stack,
NodeProcessorCtx procCtx,
Object... nodeOutputs)
throws SemanticException
- Description copied from interface:
NodeProcessor
- Generic process for all ops that don't have specific implementations.
- Specified by:
process
in interface NodeProcessor
- Parameters:
nd
- operator to processprocCtx
- operator processor contextnodeOutputs
- A variable argument list of outputs from other nodes in the walk
- Returns:
- Object to be returned by the process call
- Throws:
SemanticException
mapJoinConversionPos
public int mapJoinConversionPos(JoinOperator joinOp,
OptimizeTezProcContext context,
int buckets)
convertJoinMapJoin
public MapJoinOperator convertJoinMapJoin(JoinOperator joinOp,
OptimizeTezProcContext context,
int bigTablePosition)
throws SemanticException
- Throws:
SemanticException
Copyright © 2014 The Apache Software Foundation. All rights reserved.