何时用、如何建Oracle分区表?

来源:互联网 发布:oracle minus 优化 编辑:程序博客网 时间:2024/04/30 03:39

一、什么场景、时间适合用分区表?

1、大数据量的表,比如大于2GB。一方面2GB文件对于32位OS是一个上限,另外备份时间长。

2、包括历史数据的表,比如最新的数据放入到最新的分区中。典型的例子:历史表,只有当前月份的数据可以被修改,而其他月份只能read-only

        就我实际工作中了解到的几种情况:

  1. 全国法人单位名录库约有700-800万条记录,字段约有100个。可按所属省行政区划、指标枚举等字段建立分区表。
  2. 北京统计宏观数据库,在村一级采用一维表存储,随着指标增多,记录可达千万至亿条级。
  3. 上海市房管局系统的权属数据,按照市中心及19个区县,共划分了20个分区,以期提高数据的存取效率。


二、分区表有什么优势?

1、增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用;

2、维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可;

3、均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能;

4、改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度。


三、分区表有几种?


Oracle分区表分为四类:范围分区表、列表分区表、哈希分区表、组合分区表。

  1. 范围分区表:创建一个按字段数据范围分区的表,分区置于指定的不同表空间中。
  2. 列表分区表:创建一个按字段数据列表固定可枚举值分区的表。插入记录分区字段的值必须在列表中,否则不能被插入。
  3. 哈希分区表:创建一个按字段数据Hash值分区的表。
  4. 组合分区表:在分区中可以再建立子分区,以实现分区组合。可任意对上述各类分区进行组合分区。


四、如何建立分区表?

  1. ORACLE分区表的使用和管理:http://www.cnblogs.com/advocate/archive/2010/09/03/1816628.html
  2. Oracle中分区表的使用:http://download.csdn.net/detail/wildboy2001/4762087


五、其他

  1. oracle分区表总结:http://www.codesky.net/article/200805/119413.html
  2. 什么时候使用分区:http://wenku.it168.com/d_000063679.shtml

原创粉丝点击