pingcap/tidb

Support to use the outer side of the (Anti) Semi Join to build the hash table

Open

#32,335 opened on Feb 14, 2022

View on GitHub
 (9 comments) (4 reactions) (1 assignee)Go (6,186 forks)batch import
help wantedsig/plannertype/enhancement

Repository metrics

Stars
 (40,090 stars)
PR merge metrics
 (Avg merge 14d 4h) (346 merged PRs in 30d)

Description

Enhancement

Currently, when TiDB meets a(an) (Anti) Semi join, it would always choose the inner side to build the hash table. When the inner side is extremely large compared with the outer side, our current strategy would cost a lot on building the hash table by the inner side.

So we should support constructing the hash table by the outer side to speed up the execution when the data distribution is like the above case.

It's something the same with supporting constructing hash table by the outer side of the outer join, which is implemented in TiDB.

Contributor guide