matrixorigin / matrixorigin/matrixone
[Tech Request]: support multi indexes in Index Join
Open
kind/tech-request
priority/p1
- Dominant language
- Go
- Stars
- 1.9k
- Forks
- 311
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 768
Description
### Is there an existing issue for the same tech request?
- [X] I have checked the existing issues.
### Does this tech request not affect user experience?
- [X] This tech request doesn't affect user experience.
### What would you like to be added ?
```Markdown
目前的index join,build端只支持一个节点,也就是只能选择一个索引。
某些情况下,从索引上回表的行数很多,会导致在主表上回表查询性能不够好。
现在需要让index join的build端支持多个子节点,也就是支持同时查询多个索引。
优化器判断将可用索引按照选择度从小到大排列,index build算子依次读取每个索引的输出,并求交集,最后再发送runtime filter。
对于中移物联网的复合索引case,可以同时使用三个索引,之前需要回表查询3000个block,优化后只需要查询大约几十个block即可。预计性能会有大幅度提升。
```
### Why is this needed ?
_No response_
### Additional information
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.