Alex Antonov created SPARK-13940:
------------------------------------

             Summary: Predicate Transitive Closure Transformation
                 Key: SPARK-13940
                 URL: https://issues.apache.org/jira/browse/SPARK-13940
             Project: Spark
          Issue Type: Improvement
          Components: Optimizer
    Affects Versions: 1.6.0
            Reporter: Alex Antonov


A relatively simple transformation is missing from Catalyst's arsenal - 
generation of transitive predicates. For instance, if you have got the 
following query:
{code}
select * 
from   table1 t1
join   table2 t2
on     t1.a = t2.b
where  t1.a = 42
{code}
then it is a fair assumption that t2.b also equals 42 hence an additional 
predicate could be generated. The additional predicate could in turn be pushed 
down through the join and improve performance of the whole query by filtering 
out the data before joining it.
Such an transformation exists in Oracle DB and called transitive closure which 
hopefully should explain the title of this Jira



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to