ClickHouse / ClickHouse/ClickHouse

Ground tables JOIN optimization

Open
#109,262 0 comments 1 reaction 0 assignees View on GitHub
comp-joins external feature
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.