Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

分区表

Posted on 2010-04-15 23:25 Prayer 阅读(283) 评论(0)  编辑 收藏 引用 所属分类: 数据库,SQLDB2
 分区表是将大表的数据分成称为分区的许多小的子集。

  9i提供四种分区方法:范围分区,列表分区,哈希分区和混合分区;
  · 范围分区是根椐分区键的不同取值范围来划分子集的,关键字RANGE, VALUES LESS THAN;
  · 列表分区是根椐分区键的一些离散的取值来划分子集的,关键字LIST, VALUES;
  · 哈希分区是应用哈希算法将分区键对应到某个子集中去,关键字HASH, PARTITIONS;
  · 混合分区只能有两层,第一层是范围分区,第二层可以是列表分区或者哈希分区;
  · 范围分区和列表分区中,如果插入记录的分区键没有对应的容纳分区,会产生ORA-14400;
  · update操作如果会使记录从一个分区迁移到另一个分区,且分区表的ROW MOVEMENT属性是DISABLE,会产ORA-14402;
  · 分区表上的索引有两大类:普通的二叉树索引,分区索引,下面讲到的都是分区索引:
  · 按索引分区和表分区间的对应关系可以分为局部索引和全局索引;
  Ø 局部索引的索引分区和表分区间是一一对应的,全局索引则相反;
  Ø 局部索引的分区方法可以用上面提到四种的任何一种,全局索引的分区方法只有范围分区(而且最高的分区必须用MAXVALUE来定义);
  Ø ORACLE自动维护局部索引的分区,当表分区被合并,分裂或删除时,关联的索引分区也会被合并,分裂或删除;对分区表执行管理操作时会使其上的全局索引失效;
  Ø 建在分区表的位图索引必须是局部分区索引;
  Ø ORACLE推荐尽可能地使用局部索引;
  · 按索引栏位和分区键间的关系分为前缀索引和非前缀索引;
  Ø 前缀索引最前面的栏位是分区键栏位,非前缀索引相反;
  · 在这两种分类方法的四种组合中,只有三种有效(局部前缀索引,局部非前缀索引,全局前缀索引),不存在全局非前缀索引;
  · 分区表给CBO带来很多选项,如分区排除,并行分区连接等。
  一个硬盘经过FDISK的划分和高级格式化以后,会在所属的操作系统中建立分区表,记录一些有关硬盘给哪一种操作系统使用,硬盘的容量大小以及开始磁柱面和结束磁柱面的分配,哪一个硬盘启动,引导区(Boot Sector),文件分配表(FAT)、根目录和数据区等一系列数据。现将分区表内的内容归纳如下:
  A、分区表是创建在硬盘的第0磁柱面、第0磁道,第1个扇区上。
  B、记录操作系统的数据(DOS,OS2或其他OS)。
  C、记录分区硬盘的C(磁柱面)、H(磁头),S(扇区)的数量。
  D、记录分配的磁柱面(Cylinder)的开始。结束和容量。
  E、记录可启动的硬盘(Active)。
  F、建立引导区(Boot Sector)。
  G、建立文件分配表(FAT)。
  H、建立根目录。
  I、建立数据存储区。

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理