
2008-5-29 13:03
junsansi
[三思笔记]全面学习分区表及分区索引
关于分区表和分区索引(About Partitioned Tables and Indexes)
对于10gR2而言,基本上可以分成几类:
Range(范围)分区
Hash(哈希)分区
List(列表)分区
以及组合分区:Range-Hash,Range-List。
对于表而言(常规意义上的堆组织表),上述分区形式都可以应用(甚至可以对某个分区指定compress属性),只不过分区依赖列不能是lob,long之类数据类型,每个表的分区或子分区数的总数不能超过1023个。
对于索引组织表,只能够支持普通分区方式,不支持组合分区,常规表的限制对于索引组织表同样有效,除此之外呢,还有一些其实的限制,比如要求索引组织表的分区依赖列必须是主键才可以等。
注:本篇所有示例仅针对常规表,即堆组织表!
对于索引,需要区分创建的是全局索引,或本地索引:
全局索引(global index):即可以分区,也可以不分区。即可以建range分区,也可以建hash分区,即可建于分区表,又可创建于非分区表上,就是说,全局索引是完全独立的,因此它也需要我们更多的维护操作。
本地索引(local index):其分区形式与表的分区完全相同,依赖列相同,存储属性也相同。对于本地索引,其索引分区的维护自动进行,就是说你add/drop/split/truncate表的分区时,本地索引会自动维护其索引分区。
Oracle建议如果单个表超过2G就最好对其进行分区,对于大表创建分区的好处是显而易见的,这里不多论述why,而将重点放在when以及how。
2008-5-29 13:03
junsansi
:)
[[i] 本帖最后由 junsansi 于 2008-6-11 17:33 编辑 [/i]]
2008-5-29 13:07
bluemoon0083
三思同学的大作一定要支持啊:right:
2008-5-29 13:11
junsansi
[quote]原帖由 [i]bluemoon0083[/i] 于 2008-5-29 13:07 发表 [url=http://www.itpub.net/redirect.php?goto=findpost&pid=10515074&ptid=996554][img]http://www.itpub.net/images/common/back.gif[/img][/url]
三思同学的大作一定要支持啊:right: [/quote]
::-):
2008-5-29 14:34
brucewoo
学习一下
2008-5-29 15:14
sir.liang
Thanks
2008-5-29 15:46
fufuh2o
不赖 ,支持~~~~~~~
2008-5-30 23:16
yudingchu
支持
2008-5-31 00:17
henry406
支持
2008-5-31 11:29
h12345
支持 顶 订阅了他的博客
2008-5-31 22:55
xiaodong_1567
要支持!!!
2008-6-1 21:19
mydear
好文章
2008-6-2 01:36
cc59
:rose:
2008-6-3 13:11
victor1010
相当支持了!
好文章!
2008-6-3 13:46
chen_7733
非常感谢!
2008-6-3 20:12
hnroger
thks
2008-6-5 16:06
runni
学习的指引!谢谢
2008-6-5 17:29
sunfire999
每个表的分区或子分区数的总数不能超过1023个?
这个有些疑问,我的分区表早已远远超过1023这个限制了
我维护的一个分区表,是range-list的分区表,每天分区,每个分区下面有10几个列表子分区,最少的算 10×365 都已经 3650个分区了
实际上我查询分区+子分区数已经是11060了,不太理解楼主的说法
版本oracle 10G
2008-6-5 18:11
间之念一
*** 作者被禁止或删除 内容自动屏蔽 ***
2008-6-5 22:00
junsansi
[quote]原帖由 [i]sunfire999[/i] 于 2008-6-5 17:29 发表 [url=http://www.itpub.net/redirect.php?goto=findpost&pid=10581498&ptid=996554][img]http://www.itpub.net/images/common/back.gif[/img][/url]
每个表的分区或子分区数的总数不能超过1023个?
这个有些疑问,我的分区表早已远远超过1023这个限制了
我维护的一个分区表,是range-list的分区表,每天分区,每个分区下面有10几个列表子分区,最少的算 10×365 都已经 3650个分区了
实际上我查询分区+子分区数已经是11060了,不太理解楼主的说法
版本oracle 10G [/quote]
笔误,在10G中单个表最大可支持的分区或子分区应该是1024K-1个~~~
页:
[1]
2
3

Powered by ITPUB论坛