深入理解 Oracle 分区(1):如何实施和评估分区

然本博文旨在引导大家生产环境如何建立分区

但千万别被一些所谓的设计指南、特别是一些绝对值建议而把自己作茧自缚

生产环境当慎独!

不过、照葫芦画瓢、总比没葫芦乱画一通要强吧

那么、我们从分区索引和分区表来展开

㈠ 分区索引的设计指南




① 如果表分区字段正好是索引字段或者其前缀、例如:t表分区字段是a、
则a正好是索引字段(a)、或者正好是索引字段(a,o)的前缀、
则此时应该建立为Local Prefixed Partitioned Index

② 否则、如果欲将非分区字段建立为唯一索引、例如:假设在t表的某个字段建立唯一索引
Oracle要求必须是 Global Prefixed Index
否则、会出现如下错误:
ORA-14039: 分区列必须构成 UNIQUE 索引的关键字列子集

③ 往下看图、此时要判断“是否性能在可承受范围、而分区的可管理性、可用性更重要?”
如果是、就应该建立Local Non-Prefixed Index 也就是、
如果历史数据的整理非常频繁、而且不能承受全局分区索引重建的长时间带来的索引不可用
同时、日常交易性能尚能接受、则建议设计为本地非前缀分区索引

④ 再往下、最后判断系统是交易系统或数据仓库
通常情况、数据仓库会有频繁的大批量数据ETL操作、及历史数据清理操作
此时分区索引可用性更重要、因此建议设计为Local Non-Prefixed Index
而在交易系统、日常查询性能要求更高、历史数据清理操作频度相对较低、
因此、建议设计为Global Prefixed Index



㈡ 表分区设计

在分区方案设计时、首先目标应考虑全面
综合度量日常联机处理、数据可维护性、数据备份和恢复、并行数据操作等各方面目标





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值