You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Nick Dimiduk (JIRA)" <ji...@apache.org> on 2017/02/15 18:59:41 UTC

[jira] [Created] (SPARK-19609) Broadcast joins should pushdown join constraints as Filter to the larger relation

Nick Dimiduk created SPARK-19609:
------------------------------------

             Summary: Broadcast joins should pushdown join constraints as Filter to the larger relation
                 Key: SPARK-19609
                 URL: https://issues.apache.org/jira/browse/SPARK-19609
             Project: Spark
          Issue Type: Improvement
          Components: SQL
    Affects Versions: 2.1.0
            Reporter: Nick Dimiduk


For broadcast inner-joins, where the smaller relation is known to be small enough to materialize on a worker, the set of values for all join columns is known and fits in memory. Spark should translate these values into a {{Filter}} pushed down to the datasource. The common join condition of equality, i.e. {{lhs.a == rhs.a}}, can be written as an {{a in ...}} clause. An example of pushing such filters is already present in the form of {{IsNotNull}} filters via [~sameerag]'s work on SPARK-12957 subtasks.

This optimization could even work when the smaller relation does not fit entirely in memory. This could be done by partitioning the smaller relation into N pieces, applying this predicate pushdown for each piece, and unioning the results.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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