ClickHouse / ClickHouse/ClickHouse
Ground tables JOIN optimization
- Dominant language
- C++
- Stars
- 49.9k
- Forks
- 9k
- Avg merge
- 21h 32m
- Merged PRs (30d)
- 515
Description
### Company or project name
_No response_
### Use case
JOINS pref optimization
### Describe the solution you'd like
There're [runtime fileers](https://clickhouse.com/blog/clickhouse-fast-joins#runtime-filters-in-joins) in JOINS.They need special transport for filrer to pass it through DAG and use in JOIN algorithm.
But if the tables are ground floor ones we could use alternative way: just say to left table "you can use the right table's indexes if you need" and say to right one "you can use the left table's ones too".
Actually it's not only about ground floor tables. This additional index info could be passed frough DAG from othe ones. If we have 5 tables in JOIN the ground table's scan could use all 5 tables' indexes. It's some kind of alternative to JOIN-ing table rotation in plans: tables could knows some info about of not-nabiour joining table via their indexes.
@davenger
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.