public class IdentityProjectRemover extends Object implements Transform
SelectOperator
from tree which don't do any
processing except forwarding columns from its parent to its children.
e.g., select * from (select * from src where key = value) t1 join (select * from src where key = value) t2;
Query tree
Without this optimization:
TS -> FIL -> SEL -> RS ->
JOIN -> SEL -> FS
TS -> FIL -> SEL -> RS ->
With this optimization
TS -> FIL -> RS ->
JOIN -> FS
TS -> FIL -> RS ->
Note absence of select operator after filter and after join operator.
Also, see : identity_proj_remove.qConstructor and Description |
---|
IdentityProjectRemover() |
public ParseContext transform(ParseContext pctx) throws SemanticException
Transform
transform
in interface Transform
pctx
- input parse contextSemanticException
Copyright © 2017 The Apache Software Foundation. All rights reserved.