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