Doris的SQL解析流程是怎样的?

提问者:帅平 问题分类:面试刷题
Doris的SQL解析流程是怎样的?
1 个回答
满天都是派星べ
满天都是派星べ
比如拿以下sql举例
SELECT user_id, SUM(amount) 
FROM orders 
WHERE dt = '2024-05-20' 
GROUP BY user_id;
整个sql解析流程如下:
1、​解析与校验​:验证 orders 表存在,user_id、amount、dt 列有效。
2、​逻辑优化​:
谓词下推:dt = '2024-05-20' 下推至 Scan。
列裁剪:仅加载 user_id、amount、dt。
3、​物理计划​:
分区裁剪:仅扫描 dt='2024-05-20' 的分区。
聚合策略:本地预聚合 + 全局汇总。
​4、执行​:
BE 并行扫描分区数据,计算局部 SUM。
结果 Shuffle 到聚合节点汇总,返回最终结果。
发布于:2周前 (05-22) IP属地:
我来回答