- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十一章:分区表 1
概述 2
范围分区 2
HASH分区(散列分区) 3
列表分区 3
复合分区 4
分区表操作 4
分区表的管理 5
第十一章:
学习目标
操作分区表
概述
在大型的企业应用或企业级的数据库应用中,要处理的数据量通常可以达到几十到几百GB,有的甚至可以到TB级。虽然存储介质和数据处理技术的发展也很快,但是仍然不能满足用户的需求,为了使用户的大量的数据在读写操作和查询中速度更快,Oracle提供了对表和索引进行分区的技术,以改善大型应用系统的性能
使用分区表有如下优点:
增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用;
维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可;
均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能;
改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度
分区的方法有如下几种:
范围分区
HASH分区(散列分区)
列表分区
复合分区(范围+HASH)(范围+列表)
下面我们创建表空间,以备课程练习使用:
CREATE TABLESPACE TEST1 DATAFILE C:\TEMP\TEST1.DBF SIZE 10M
CREATE TABLESPACE TEST2 DATAFILE C:\TEMP\TEST2.DBF SIZE 10M
CREATE TABLESPACE TEST3 DATAFILE C:\TEMP\TEST3.DBF SIZE 10M
范围分区
范围分区就是对数据表中的某个值的范围进行分区,根据某个值的范围,决定将该数据存储在哪个分区上。如根据序号分区,根据业务记录的创建日期进行分区等。
如:物料交易表,表名:material_transactions,将来该表可能有千万条数据记录,要求使用分区表。
可以使用序号分区分到3个区上,每个区中预计存储三千万条数据,也可以使用日期分区,如每5年的数据存储在一个分区上。
我们下面创建这个表:
Create table material_test
(transaction_id number primary key,
Item_id number(8) not null,
Item_description varchar2(300),
Transaction_date date not null)
Partition by range(transaction_id)
(partition part_01 values less than tablespace
test1,
partition part_02 values less than tablespace
test2,
partition part_03 values less than(maxvalue) tablespace
test3)
当然我们也可以通过时间来进行分区,语法如下:
Create table material_test1
(transaction_id number primary key,
Item_id number(8) not null,
Item_description varchar2(300),
Transaction_date date not null)
Partition by range(transaction_date)
(partition part_01 values less than(to_date(2006-01-01,yyyy-mm-dd)) tablespace test1,
partition part_02 values less than(to_date(2010-01-01,yyyy-mm-dd)) tablespace test2,
partition part_03 values less than(maxvalue) tablespace test3)
HASH分区(散列分区)
在列的取值不容易确定时可以采用此方法。
如按照身份证进行分区,就很难确定身份证分区范围。
HASH实际上是一种算法,当向表插入数据时,系统会自动根据当前分区列的值计算出HASH值之后确定应该将该行存放在哪个表空间。
创建散列分区表如下:
Create table material_test2
(transaction_id number primary key,
Item_id number(8) not null,
Item_description varchar2(300),
Transaction_date date not null)
Partition by hash(transaction_
您可能关注的文档
- office Excel的使用技巧很全面.doc
- Office Professional Plus 2010 VOL简体中文版激活工具和方法.doc
- Office XP高效应用技巧二则.doc
- OFFICE 复习资料.doc
- office 认证总结.doc
- office_professional_plus_2007_密钥.doc
- OFFICE+常用快捷键.doc
- Office办公软件常见操作技巧.doc
- Office办公软件发展简史.doc
- office办公软件高级技巧.doc
- 2025民航职业技能鉴定考试综合练习一套附答案详解.docx
- 2025民航职业技能鉴定考试综合练习【轻巧夺冠】附答案详解.docx
- 幼师实习个人计划总结.doc
- 高中思想政治课程中数字化评价与课程思政融合的实证分析教学研究课题报告.docx
- 基于游戏化AI的小学数学逻辑思维训练关卡设计与应用策略教学研究课题报告.docx
- 劳动经济学角度分析就业难成因及对策.pptx
- 2025年快递驿站智能化服务创新案例剖析.docx
- 初中人工智能教学场景下的学生数字身份认证与隐私保护策略研究教学研究课题报告.docx
- 2025民航职业技能鉴定考试综合练习【新题速递】附答案详解.docx
- 2025至2030煤炭钢铁行业市场深度分析及竞争格局与投资价值报告.docx
文档评论(0)