[ 
https://issues.apache.org/jira/browse/IGNITE-10307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vladimir Ozerov reassigned IGNITE-10307:
----------------------------------------

    Assignee: Vladimir Ozerov

> SQL: Extract partition info from JOINs
> --------------------------------------
>
>                 Key: IGNITE-10307
>                 URL: https://issues.apache.org/jira/browse/IGNITE-10307
>             Project: Ignite
>          Issue Type: Task
>          Components: sql
>            Reporter: Vladimir Ozerov
>            Assignee: Vladimir Ozerov
>            Priority: Major
>              Labels: iep-24
>             Fix For: 2.8
>
>
> Currently we do not extract partitions when JOINs are involved. Let's 
> implement it. We may start with relatively simple rules:
> # No subqueries
> # No GROUP BY
> Then walk through JOINed tables and extract partitions from AND clauses. 
> There are some tricky things to consider:
> # Resulting model (tree) must be craefted carefully so that we can reuse it 
> later in thin clients for efficient co-location.
> # Resulting model may affect how we group tables during push-down phase. 
> Probably this would be huuuge thing, so may be it is better to implement it 
> in separate ticket
> # When JOIN is performed partition info might be "transferred" between 
> tables. E.g.:
> {code}
> a INNER JOIN b ON a.id = b.affinity_id WHERE a.id = :1
> {code}
> In this case if tables are co-located (we may infer it automatically in some 
> cases), then {{a.id=:1}} partition rule can be "transferred" to 
> {{b.affinity_id=:1}}.
> Very good test coverage would be needed here.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to