news 2026/2/16 16:16:41

doris中的分区上卷

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
doris中的分区上卷

在 Doris 中,分区上卷(Roll-Up)是一种优化存储和查询性能的重要机制,其核心是通过合并细粒度分区(如日分区)为粗粒度分区(如月分区或年分区),减少分区数量并提升查询效率。

当基表数据经过聚合处理后,各分区的数据量可能会显著减少。在这种情况下,可以采用分区上卷策略,以降低物化视图的分区数量。


1. 分区上卷的原理

假设原始表按天分区:

CREATE TABLE sales ( event_day DATE, product_id INT, revenue DECIMAL(10, 2) ) PARTITION BY RANGE(event_day) ( PARTITION p20230101 VALUES [('2023-01-01'), ('2023-01-02')), PARTITION p20230102 VALUES [('2023-01-02'), ('2023-01-03')), ... );

通过分区上卷,可将多个日分区合并为月分区:

ALTER TABLE sales ROLLUP (PARTITION p202301 TO p202301);

2. 操作步骤

2.1 启用分区上卷

在表创建时定义上卷策略:

CREATE TABLE sales ( ... ) PARTITION BY RANGE(event_day) ROLLUP ( TO YEAR(event_day), -- 按年上卷 TO MONTH(event_day) -- 按月上卷 );
2.2 手动触发上卷
ALTER TABLE sales ROLLUP PARTITION p20230101, p20230102 TO PARTITION p202301;

3. 使用场景

  • 存储优化:合并旧分区减少小文件数量,降低存储开销。
  • 查询加速:查询月数据时直接访问月分区,避免扫描多个日分区。
  • 自动化管理:结合调度工具定期执行上卷操作。

4. 注意事项

  • 不可逆性:上卷后原分区数据不可恢复,需提前备份。
  • 权限要求:需ALTER权限执行上卷操作。
  • 性能影响:上卷过程可能暂时占用系统资源,建议低峰期执行。

5. 示例代码

# 模拟按月自动上卷的调度逻辑 import schedule import doris_client def monthly_rollup(): last_month = "2023-12" # 合并上个月的所有日分区 doris_client.execute( f"ALTER TABLE sales ROLLUP PARTITION p{last_month}01 TO p{last_month}31 TO PARTITION p{last_month};" ) schedule.every().month.do(monthly_rollup)

通过合理使用分区上卷,可显著提升 Doris 在大数据场景下的存储与查询效率。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/15 23:37:30

Doris的Colocation[托管] Join

好的,Doris 的 Colocation Join(托管式关联) 是一种用于优化分布式表关联查询性能的特性。其核心思想是将需要频繁关联的表的数据分片(Bucket)以相同的分布策略放置在同一组物理节点上,从而在关联查询时避免…

作者头像 李华
网站建设 2026/2/13 17:20:45

微信小程序vue_uniapp二手书交易平台

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/2/8 9:40:42

微信小程序vue_uniapp班级学生奖惩成绩信息管理系统

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/2/14 2:52:48

HR追着要的面试分析Agent!全网首发华为ModelEngine实战

目录 引言 ModelEngine核心价值:一站式AI开发 端到端的AI开发流程 ModelEngine产品架构 数据工程 模型工程 应用编排 FIT: 重新定义 AI 工程化的三维坐标系 本地部署ModelEngine 获取源码 启动脚本 创建《HR人事经理》 创建应用 多分支划分 文本输出…

作者头像 李华
网站建设 2026/2/9 3:37:21

微信小程序uniapp-vue健身教练私教预约系统

文章目录具体实现截图主要技术与实现手段系统设计与实现的思路系统设计方法java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万…

作者头像 李华
网站建设 2026/2/14 5:36:44

Windows系统 32 位与 64 位系统核心差异解析

Windows系统32位(x86)和64位(x64)核心区别在于硬件寻址能力,进而影响内存支持、性能发挥、软件兼容性,下面分核心差异、适配场景、选择建议讲清楚,易懂又全面:一、 核心区别&#xf…

作者头像 李华