今天图老师小编给大家介绍下Oracle笔记-分区,平时喜欢Oracle笔记-分区的朋友赶紧收藏起来吧!记得点赞哦~
【 tulaoshi.com - 编程语言 】
第 14 章 分区
14.1 分区的使用
增加可用性
减轻维护负担
提高DML与查询的性能
14.2 分区如何工作
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)表分区策略
索引分区
本地索引
分为本地前缀索引(Local Prefixed Index)、本地非前缀索引(Local Non-prefixed Index)
1. 索引的选择
在单表查询中,本地非前缀索引可能增加可用性,也更加实用。例如表T(a, b)按a区间分区,若在b上建立本地索引,则当某个分区离线,仅查询b的某个值时,该索引可用,而索引(a, b)不可用;删除索引(a, b),查询(a, b)的某对值,b上的索引仍可用。此时若建立索引(b, a),则可应对各类查询。
在多表关联(如上例中按照(a, b)值关联)时,系统将发现代价较高而不会用到本地非前缀索引(如上例中(b, a))。
因此建立本地索引时应当考虑通常的使用环境。
2. 无法基于本地非前缀索引建立唯一键或主键。
全局索引
仅有一种,即全局前缀索引
1. 数据仓库环境
在(与建立好相应索引的表)交换分区与索引或分割分区后,全局索引将失效而必须重建,因此全局索引并不适合数据仓库。
例如:
ALTER TABLE partitioned
EXCHANGE PARTITION fy_1999
WITH TABLE fy_1999
INCLUDING INDEXES
WITHOUT VALIDATION;
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)ALTER TABLE partitioned
SPLIT PARTITION the_rest
AT (TO_DATE(‘200101’, ‘yyyymm’))
INTO (PARTITION fy_2000, PARTITION the_rest);
2. OLTP环境
一定程度上增加了可用性。当某些分区离线,不含有用于分区的列且合乎查询条件的数据存在于在线分区的索引仍然是可用的,对于不需要查询全表而是通过索引即可得到结果的查询也是有效的(例如COUNT非用于分区的列等)。
来源:http://www.tulaoshi.com/n/20160219/1621719.html
如果您有什么好的建议或者疑问,可以联系我们。 商务合作QQ:3272218541;3282258740。商务合作微信:13319608704;13319603564。
加好友请备注机构名称。让我们一起学习、一起进步tulaoshi.com 版权所有 © 2019 All Rights Reserved. 湘ICP备19009391号-3
微信公众号