暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

oracle 分区介绍

原创 张超 2026-03-30
19

Oracle 21c 提供丰富且完善的分区能力,覆盖从单级到多级、从手动到自动、从范围到离散值的全场景。以下是官方支持的所有分区方式,按类型与组合分类说明。




一、单级分区(基础 6 类)



类型语法关键字划分依据适用场景核心特点
范围分区RANGE (col)连续值区间(日期 / 数值)时间序列、流水号、按周期管理支持 MAXVALUE、区间裁剪、历史归档Oracle
列表分区LIST (col)离散值集合(枚举)地区、状态、类型、渠道支持 DEFAULT 分区兜底;多列列表也支持
哈希分区HASH (col)哈希算法均匀分布无明确范围、需均衡 IO / 并行分区数建议 2 的幂;自动负载均衡Oracle
区间分区RANGE + INTERVAL范围 + 自动扩展按月 / 周 / 日滚动新增数据超出门槛自动创建新分区,无需手动 ADD PARTITIONOracle
自动列表分区LIST AUTOMATIC自动匹配新离散值枚举值频繁新增、不确定插入新值自动创建分区,类似区间的自动机制Oracle
系统分区SYSTEM应用 / 用户指定写入强可控、分库分表类似场景每个分区独立段,需显式指定写入分区




二、组合分区(多级 12 类)


在一级分区基础上,再用二级分区(子分区)进一步细分,覆盖多维业务场景。


2.1 范围为一级的组合



组合一级二级典型用途
范围 - 哈希RANGE-HASH哈希时间维度 + 并行查询 / 均匀分布
范围 - 列表RANGE-LIST列表时间 + 地区 / 类型,多维过滤
范围 - 范围RANGE-RANGE范围双时间维度(下单 / 支付 / 发货)
范围 - 区间RANGE-INTERVAL区间主范围 + 次级周期管理(如年 + 月)


2.2 列表为一级的组合



组合一级二级典型用途
列表 - 哈希LIST-HASH哈希主维度离散 + 并行 / 均衡
列表 - 列表LIST-LIST列表双离散维度(地区 + 渠道)
列表 - 范围LIST-RANGE范围主维度离散 + 次级时间周期


2.3 哈希为一级的组合



组合一级二级典型用途
哈希 - 哈希HASH-HASH哈希双维度哈希,支持双向分区 - wise Join
哈希 - 列表HASH-LIST列表均衡分布 + 离散维度过滤
哈希 - 范围HASH-RANGE范围均衡分布 + 时间周期管理


2.4 区间为一级的组合



组合一级二级典型用途
区间 - 哈希INTERVAL-HASH哈希自动时间扩展 + 并行 / 均衡Oracle
区间 - 列表INTERVAL-LIST列表自动时间 + 离散维度Oracle
区间 - 范围INTERVAL-RANGE范围自动时间 + 次级时间周期


注:组合分区均支持本地索引(LOCAL)自动对齐,全局索引(GLOBAL)需手动维护。




三、特殊分区与扩展能力


3.1 引用分区(Reference Partitioning)


通过外键关系继承父表分区策略,子表无需重复定义分区键,实现父子表同构分区,保证关联数据一致性与分区维护一致性Oracle。


3.2 虚拟列分区(Virtual Column Partitioning)


基于表达式 / 函数生成的虚拟列作为分区键,支持 RANGE/LIST/HASH,无需新增物理列,灵活适配复杂业务规则。


3.3 系统分区(System Partitioning)


用户 / 应用显式指定数据写入哪个分区,适合分库分表、强可控写入场景,每个分区为独立段,管理粒度更细。


3.4 混合分区表(Hybrid Partitioned Tables)


支持热数据在内存、温数据在闪存、冷数据在低成本存储的分层管理,结合 ILM(信息生命周期管理)策略,自动冷热分层与归档。




四、21c 新增 / 增强亮点


  • 自动列表分区:插入新离散值自动创建分区,大幅减少手动维护开销Oracle。
  • 组合区间扩展:支持 INTERVALRANGE/LIST/HASH 的更多组合,适配更复杂的时间 + 多维场景Oracle。
  • 系统分区增强:更灵活的分区写入控制,适配分库分表类架构。
  • ILM 与混合分区深度集成:自动依据访问频率将分区迁移至不同存储层级,降低 TCO。




五、快速选型建议


  • 按时间周期:优先 范围 / 区间分区;需自动扩展则选 区间Oracle。
  • 离散枚举:优先 列表分区;值不确定且需自动扩容选 自动列表Oracle。
  • 均衡 IO / 并行:优先 哈希分区Oracle。
  • 多维过滤:优先 组合分区(如范围 - 列表、列表 - 哈希)。
  • 父子表同构:选 引用分区Oracle。
  • 分库分表类场景:选 系统分区

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论