A-speed

每个人都是🏆
  新随笔  :: 管理

查询并行度(#virtual segment)决定规则

Posted on 2026-10-27 21:01  a-speed  阅读(7)  评论(0)    收藏  举报
OushuDB 查询并行度 #vseg 决定规则

查询并行度(#virtual segment)决定规则

依据:磐维OLAP用户手册 · 查询优化章节(手册页30-31)
查询的表集合
▼
含 UDF / 外部表 ?
#vseg = max_nvseg_perquery / max_nvseg_perquery_perseg(及外部表 ON/location 数)
只含 Hash 分布表 ?
bucket 相同 N
→ N 个 vseg
bucket 不同
→ 最大 bucket 个 vseg
Hash + Random 混合 ?
random 总大小 ≤ hash×1.5
→ 用 hash 的 bucket 数
否则 → hash 表当 random 处理(按表大小)
只含 Random 分布表 ?
#vseg 按表大小(1 HDFS block ≈128M → 1 vseg),受 max_nvseg_perquery / max_nvseg_perquery_perseg 限制
查询结果是 hash 分布的表 ?
#vseg = 该结果表 bucket 数(强制)