org.apache.hadoop.hive.ql.optimizer.correlation
Class CorrelationOptimizer
java.lang.Object
org.apache.hadoop.hive.ql.optimizer.correlation.CorrelationOptimizer
- All Implemented Interfaces:
- Transform
public class CorrelationOptimizer
- extends Object
- implements Transform
Implementation of Correlation Optimizer. This optimizer is based on
the paper "YSmart: Yet Another SQL-to-MapReduce Translator"
(Rubao Lee, Tian Luo, Yin Huai, Fusheng Wang, Yongqiang He, and Xiaodong Zhang)
(http://www.cse.ohio-state.edu/hpcs/WWW/HTML/publications/papers/TR-11-7.pdf).
Correlation Optimizer detects if ReduceSinkOperators share same keys.
Then, it will transform the query plan tree (operator tree) by exploiting
detected correlations. For details, see the original paper of YSmart.
Test queries associated with this optimizer are correlationoptimizer1.q to
correlationoptimizer14.q
CorrelationOptimizer
public CorrelationOptimizer()
transform
public ParseContext transform(ParseContext pctx)
throws SemanticException
- Detect correlations and transform the query tree.
- Specified by:
transform
in interface Transform
- Parameters:
pactx
- current parse context
- Returns:
- ParseContext
- Throws:
SemanticException
Copyright © 2014 The Apache Software Foundation. All rights reserved.