SQL 过滤引擎
SQL Filter Engine
内嵌 SQL 解析与查询规划引擎,支持结构化过滤与向量检索的混合查询
子问题
1.SQL 解析与语义分析
2.查询计划生成与优化
3.倒排索引与正排扫描切换
4.Arrow Acero 自定义算子注册与执行
5.多 Segment 并行执行计划合并
6.查询重写规则引擎(EqualOr/Contain 合并)
各项目的解法1 solutions
Signals
横向对比
| 维度 | zvec |
|---|---|
| 解析技术 | ANTLR 生成 C++ 解析器,SLL→LL 双模式降级 |
| 条件分类 | SearchCondCheckWalker 三路分离:vector/invert/forward |
| 执行引擎 | Arrow Acero Declaration 链 + 3 个自定义算子 |
| 优化策略 | InvertCondOptimizer 基于 evaluate_ratio 选择率降级 |
| 扫描策略 | vector_scan / invert_scan / forward_scan 三策略自动选择 |
| 查询重写 | SimpleRewriter 规则引擎:EqualOr 合并 + Contain 重写 |
最佳实践
1.根据选择率自动切换倒排/正排扫描策略
2.SLL→LL 双模式降级兼顾解析性能与正确性
3.双 AST 设计隔离只读语法树与可变查询树
4.将过滤条件编译为 Arrow Compute Expression 复用列式计算