Oracle官方文档翻译《Database Concepts 23ai》第5章-索引和索引组织表-索引组织表概述(3)

5 Indexes and Index-Organized Tables

Overview of Index-Organized Tables

Index-Organized Tables with Row Overflow Area

带行溢出区的索引组织表

创建索引组织表时,可以指定一个单独的段作为行溢出区。

在索引组织表中,B树索引条目可能很大,因为它们包含整个行,因此使用一个单独的段来容纳这些条目是很有用的。相比之下,普通B树条目通常很小,因为它们只包含键和rowid。

如果指定了行溢出区域,那么数据库可以将索引组织表中的行分为以下两个部分:

• 索引条目
这部分包含所有主键列的列值,一个指向行溢出部分的物理rowid,以及可选的一些非键列。这部分存储在索引段中。

• 溢出部分
这部分包含剩余非键列的列值。这部分存储在溢出存储区段中。

另请参阅:

  • Oracle Database Administrator’s Guide 了解如何使用CREATE TABLE的OVERFLOW子句设置行溢出区
  • Oracle Database SQL Language Reference 了解CREATE TABLE … OVERFLOW的语法和语义
Secondary Indexes on Index-Organized Tables

索引组织表的辅助索引

辅助索引是针对索引组织表的索引。

从某种意义上说,辅助索引是一个索引的索引。它是一个独立的模式对象,与索引组织表分开存储。

Oracle数据库在索引组织表中使用称为逻辑rowid的行标识符。逻辑rowid是表主键的base64编码表示形式。逻辑rowid的长度取决于主键的长度。

由于插入操作,索引叶块中的行可能在块内部或块之间移动。与堆组织行不同,索引组织表中的行不会像堆组织表那样迁移行。因为索引组织表中的行没有永久的物理地址,数据库使用基于主键的逻辑rowid。

例如,假设departments表是索引组织的。location_id列存储每个部门的ID。表存储行如下,最后一个值是位置ID:

10,Administration,200,1700
20,Marketing,201,1800
30,Purchasing,114,1700
40,Human Resources,203,2400

在location_id列上的辅助索引可能具有如下索引条目,逗号后面的值是逻辑rowid:

1700,*BAFAJqoCwR/+
1700,*BAFAJqoCwQv+
1800,*BAFAJqoCwRX+
2400,*BAFAJqoCwSn+

辅助索引提供了对索引组织表的快速有效的访问,使用的列既不是主键也不是主键的前缀。例如,查询ID大于1700的部门名称可以利用辅助索引加快数据访问。

  • 逻辑rowid和物理猜测
    辅助索引使用逻辑rowid来定位表行。

  • 索引组织表上的位图索引
    索引组织表上的辅助索引可以是位图索引。位图索引为每个索引键存储一个位图。

另请参阅:

  • “Rowid Data Types” 了解更多关于rowid的使用,以及ROWID伪列
  • "Chained and Migrated Rows " 了解行为什么会迁移,迁移为什么会增加I/O数量
  • Oracle Database Administrator’s Guide 了解如何在索引组织表上创建辅助索引
  • Oracle Database VLDB and Partitioning Guide 了解如何在索引组织表分区上创建辅助索引

往期内容:
Oracle官方文档翻译《Database Concepts 23ai》第5章-索引和索引组织表-索引组织表概述(1)

Oracle官方文档翻译《Database Concepts 23ai》第5章-索引和索引组织表-索引组织表概述(2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值