Oracle 分区表的优点

Oracle 分区表的优点

ID:40496845

大小:68.36 KB

页数:33页

时间:2019-08-03

Oracle 分区表的优点_第1页
Oracle 分区表的优点_第2页
Oracle 分区表的优点_第3页
Oracle 分区表的优点_第4页
Oracle 分区表的优点_第5页
资源描述:

《Oracle 分区表的优点》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ORACLE表分区表分区的好处和事处理表分区描述表分区(partition):表分区技术是在超大型数据库(VLDB)中将大表及其索引通过分区(patition)的形式分割为若干较小、可管理的小块,并且每一分区可进一步划分为更小的子分区(sub partition)。而这种分区对于应用来说是透明的。Oracle的表分区功能通过改善可管理性、性能和可用性,从而为各式应用程序带来了极大的好处。通常,分区可以使某些查询以及维护操作的性能大大提高。此外,分区还可以极大简化常见的管理任务,分区是构建千兆字节数据系统或超高可用性系统的

2、关键工具。分区功能能够将表、索引或索引组织表进一步细分为段,这些数据库对象的段叫做分区。每个分区有自己的名称,还可以选择自己的存储特性。每个分区都是一个独立的段(SEGMENT),可以存放到相同(不同)的表空间中。从数据库管理员的角度来看,一个分区后的对象具有多个段,这些段既可进行集体管理,也可单独管理,这就使数据库管理员在管理分区后的对象时有相当大的灵活性。但是,从应用程序的角度来看,分区后的表与非分区表完全相同,使用SQLDML命令访问分区后的表时,无需任何修改。(对于高效率查询是有影响,主要差别是对某一分区数据时行

3、查询时和对整体数据进行查询)表分区的好处通过对表进行分区,可以获得以下的好处:1)增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用;2)维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可;3)均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能;4)改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度。分区表事务操作的时候,指定了分区,系统在执行的时候则只操作该分区的记录,提高了数据处理的速度。不要指定分区直接操作数据也是可以的。在分区表上建索引及多索引的使

4、用和非分区表一样。此外,因为在维护分区的时候可能对分区的索引会产生一定的影响,可能需要在维护之后重建索引,相关内容请参考分区表索引部分的文档缺点分区表相关:已经存在的表没有方法可以直接转化为分区表。不过Oracle提供了在线重定义表的功能。什么时候使用分区表1、表的大小超过2GB。2、表中包含历史数据,新的数据被增加都新的分区中。各版本表分区的特性区别下面的表列出了每个版本中包括的分区特性:Oracle数据库版本分区特性8.0.5引入范围分区8i引入哈希和混合范围-哈希分区9i引入列表分区,混合范围-列表分区10g引入范

5、围,列表和索引组织表的哈希分区,还引入了其他混合分区类型(range-hash,range-list)11g引用分区、间隔分区、虚拟列分区以及扩展的组合分区引入分区扩展:l        间隔分区l        REF分区l        基于列的虚拟分区l        分区顾问(range-range,list-range,list-list,list-hash)分区别的类型ü范围分区:将表按某一字段或若干个字段的取值范围分区。ühash分区:将表按某一字段的值均匀地分布到若干个指定的分区。ü复合分区:结合了前面两

6、种分区类型的优点,首先通过值范围将表进行分区,然后以hash模式将数据进一步均匀分配至物理存储位置。ü列表分区:数据分布是通过分区键的一串值定义的,这对不连续的列表非常有用,如:区域、状态等。(9I以上支持)ü混合分区:有两个数据分布办法用于创建混合分区,表首先通过第一个数据分布办法进行初始化分区,然后每个分区再通过第二个办法分成子分区,下面列出了可用的混合分区类型:范围-哈希,范围-列表,范围-范围,列表-范围,列表-列表,列表-哈希。在10g中索引组织表(表的索引和数据存储在一起)支持通过范围、列表或哈希进行分区,然

7、而,混合分区在索引组织表上不受支持。ü间隔分区:在11g中才引入,间隔分区是对范围分区的扩展,为等距范围分区提供了自动化,分区创建为元数据,只有分区开始部分是不变的,附加的段是当数据抵达时才分配的,附加分区和本地索引是自动创建的。SQL>CREATETABLESALES_PART(TIME_IDNUMBER,REGION_IDNUMBER,ORDER_IDNUMBER,ORDER_DATEDATE,SALES_QTYNUMBER(10,2),SALES_AMOUNTNUMBER(12,2))PARTITIONBYRANG

8、E(ORDER_DATE)INTERVAL(NUMTOYMINTERVAL(1,'month')(PARTITIONp_firstVALUESLESSTHAN('01-JAN-2006');numtoyminterval函数转换一个数字为间隔一年至一个月的文字(年或月),间隔分区表可以有传统的范围和自动间隔部分,范围

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。