You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We could broadcast all the filters on the join keys to reduce the input records:
Inner Join: all the filters on the join keys can be merged and pushed to both sides.
Outer Join: filters that pushed to the outer table and involves the outer join keys can also be pushed to the inner table on the corresponding inner join keys.
The latter one filters out all the records of left and right side of the join operator, which could be more faster than the former one, and reduces the resource consumption of the query execution.
NOTE: in this case, t1.a in (12, 13) works on the result of the outer join and we have pushed it down to the outer table.
But we can further push this filter down to the inner table, since only the the records satisfy t2.a in (12, 13) could make join predicate t1.a = t2.a be positive in the join operator. So we can optimize this query to:
We could broadcast all the filters on the join keys to reduce the input records:
Inner Join
: all the filters on the join keys can be merged and pushed to both sides.Outer Join
: filters that pushed to the outer table and involves the outer join keys can also be pushed to the inner table on the corresponding inner join keys.An example for
Inner Join
:If the filter on both sides join keys are merged together, the result could be:
The latter one filters out all the records of left and right side of the join operator, which could be more faster than the former one, and reduces the resource consumption of the query execution.
An example for
Outer Join
:NOTE: in this case,
t1.a in (12, 13)
works on the result of the outer join and we have pushed it down to the outer table.But we can further push this filter down to the inner table, since only the the records satisfy
t2.a in (12, 13)
could make join predicatet1.a = t2.a
be positive in the join operator. So we can optimize this query to:And the join predicate
t2.a in (12, 13)
can be pushed down:The text was updated successfully, but these errors were encountered: