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

5 Indexes and Index-Organized Tables

Overview of Index-Organized Tables

Index-Organized Tables with Row Overflow Area
Logical Rowids and Physical Guesses

逻辑rowid和物理猜测

辅助索引使用逻辑rowid来定位表行。

逻辑rowid包括一个物理猜测,即索引条目首次创建时的物理rowid。Oracle数据库可以使用物理猜测直接探测索引组织表的叶块,跳过主键搜索。当行的物理位置发生变化时,即使逻辑rowid包含一个过时的物理猜测,它仍然有效。

对于堆组织表,通过辅助索引访问涉及对辅助索引的扫描,和一个读取行所在数据块的额外I/O。对于索引组织表,通过辅助索引的访问根据物理猜测的使用和准确性而变化:

  • 没有物理猜测,访问涉及两次索引扫描:先扫描辅助索引,然后扫描主键索引。

  • 使用物理猜测,访问取决于其准确性:
    对于准确的物理猜测,访问包括辅助索引扫描和一个读取行所在数据块的额外I/O。
    对于不准确的物理猜测,访问包括辅助索引扫描和一个I/O以获取错误的数据块(如猜测所指示的),然后通过主键值进行索引组织表的唯一索引扫描。

Bitmap Indexes on Index-Organized Tables

索引组织表上的位图索引

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

当位图索引存在于索引组织表上时,所有位图索引都使用堆组织的映射表。映射表存储索引组织表的逻辑rowid。每个映射表行为对应的索引组织表行存储一个逻辑rowid。

数据库使用搜索键访问位图索引。如果数据库找到该键,则将位图条目转换为物理rowid。对于堆组织表,数据库使用物理rowid访问基表。对于索引组织表,数据库使用物理rowid访问映射表,然后得到一个逻辑rowid,数据库再使用该逻辑rowid访问索引组织表。下图说明了对departments_iot表查询的索引访问。

图5-4 索引组织表上的位图索引
在这里插入图片描述

注意:
索引组织表中行的迁移,不会导致建立在该索引组织表上的位图索引无法使用。

另请参阅:

  • “Rowids of Row Pieces” 了解物理和逻辑rowid之间的区别

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

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值