Doris如何优化OLAP场景中的聚合查询?

提问者:帅平 问题分类:数据库
Doris如何优化OLAP场景中的聚合查询?
1 个回答
单身成瘾i
单身成瘾i
具体的措施有:
1、使用Aggregate Key模型
对固定维度的SUM/MAX等查询,在建表时定义聚合键(如AGGREGATE KEY(dt, region, product)),数据在导入阶段自动预聚合,减少查询时的计算量。
2、动态分区预聚合
对时间序列数据,按小时/天分区,每个分区内数据已聚合到最小粒度。
3、构建多层Rollup
针对不同维度的GROUP BY需求,创建多级Rollup表
-- 原始表聚合到dt+region+product
ALTER TABLE sales_agg ADD ROLLUP r1(dt, region, total_sales);
-- 上卷到dt+region层级
ALTER TABLE sales_agg ADD ROLLUP r2(dt, region, total_sumsales);
4、使用物化视图
创建物化视图实现跨维度预聚合,查询时自动命中最优物化视图
发布于:16小时前 IP属地:
我来回答