知识大全 详细介绍Oracle数据库的聚簇技术

Posted 语句

篇首语:得意犹堪夸世俗,诏黄新湿字如鸦。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 详细介绍Oracle数据库的聚簇技术相关的知识,希望对你有一定的参考价值。

详细介绍Oracle数据库的聚簇技术  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

   什么是聚簇

  聚簇是根据码值找到数据的物理存储位置 从而达到快速检索数据的目的 聚簇索引的顺序就是数据的物理存储顺序 叶节点就是数据节点 非聚簇索引的顺序与数据物理排列顺序无关 叶节点仍然是索引节点 只不过有一个指针指向对应的数据块 一个表最多只能有一个聚簇索引

  

   使用 Oracle 聚簇索引

  

  聚簇是一种存储表的方法 这些表密切相关并经常一起连接进磁盘的同一区域 例如 表 BOOKSHELF 和BOOKSHELF_AUTHOR 数据行可以一起插入到称为簇(Cluster)的单个区域中 而不是将两个表放在磁盘上的不同扇区上 簇键(Cluster Key)可以是一列或多列 通过这些列可以将这些表在查询中连接起来(例如 BOOKSHELF表和BOOKSHELF_AUTHOR表中的 Title列) 为了将表聚集在一起 必须拥有这些将要聚集在一起的表

  

  下面是create cluster命令的基本格式

  

>

  

  cluster的名字遵循表命名约定 column datatype是将作为簇键使用的名字和数据类型 column的名字可以与将要放进该簇中的表的一个列名相同 或者为其他有效名字 下面是一个例子

  

>

  

  这样就建立了一个没有任何内容的簇(象给表分配了一块空间一样) COL 的使用对于簇键是不相干的 不会再使用它 但是 它的定义应该与要增加的表的主键相符 接下来 建立包含在该簇中的表

  

>

  

  在向BOOKSHELF表中插入数据行之前 必须建立一个聚簇索引

  

>

  

  在上面的create table语句中 簇BOOKandAUTHOR(Title)子句放在表的列清单的闭括号的后面 BOOKandAUTHOR是前面建立的聚簇的名字 Title是将存储到聚簇Col 中的该表的列 create cluster语句中可能会有多个簇键 并且在created table语句中可能有多个列存储在这些键中 请注意 没有任何语句明确说明Title列进入到Col 中 这种匹配仅仅是通过位置做到的 即Col 和Title都是在它们各自的簇语句中提到的第一个对象 多个列和簇键是第一个与第一个匹配 第二个与第二个匹配 第三个与第三个匹配 等等 现在 添加第二个表到聚簇中

  

>

  

  当这两个表被聚在一起时 每个唯一的Title在簇中实际只存储一次 对于每个Title 都从这两个表中附加列

  来自这两个表的数据实际上存放在一个位置上 就好像簇是一个包含两个表中的所有数据的大表一样

  

   散列聚簇

  

  对于散列聚簇 它只有一个表 它通过散列算法求出存储行的物理存储位置 从而快速检索数据 创建散列聚簇时要指定码列的数据类型 数据行的大小及不同码值的个数 如果码值不是平均分布的 就可能有许多行存储到溢出块上 从而会降低查询该表的SQL语句的性能

  

  散列聚簇被用在总是通过主键查询数据的情况 例如要从表 T 查询数据并且查询语句总是是这样

  

>

  

  

  

  

  这时散列聚簇是一个好的选择 因为不需要索引 Oracle 将通过散列算法得到值 :x 所对应的物理地址 从而直接取到数据 不用进行索引扫描 只通过散列值进行一次表访问

  

  散列聚簇语法示例

  

> cha138/Article/program/Oracle/201311/18689

相关参考

知识大全 讲解Oracle数据库B-tree索引

讲解Oracle数据库B-tree索引  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!假如聚簇因子过

知识大全 详细介绍Oracle9i的各个技术特征

详细介绍Oracle9i的各个技术特征  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在介绍Or

知识大全 详细讲解Oracle数据库的“周数计算”

详细讲解Oracle数据库的“周数计算”  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  ——日期

知识大全 详细讲解Oracle数据库运行错误的解决方法

详细讲解Oracle数据库运行错误的解决方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Or

知识大全 Oracle启动程序方式详细介绍

Oracle启动程序方式详细介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!startupnom

知识大全 Oracle触发器详细介绍

Oracle触发器详细介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  触发器  是特定事件出

知识大全 Oracle中逻辑导出Exp/导入Imp的详细介绍以及参数介绍

Oracle中逻辑导出Exp/导入Imp的详细介绍以及参数介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来

知识大全 详细讲解Oracle服务器的常用命令行

详细讲解Oracle服务器的常用命令行  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!数据库管理相关

知识大全 Oracle 11g必须开启的服务及服务详细介绍

Oracle11g必须开启的服务及服务详细介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  成

知识大全 Oracle数据库高级复制功能介绍

Oracle数据库高级复制功能介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Oracle数