前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《Oracle Concept》第三章 - 3

《Oracle Concept》第三章 - 3

作者头像
bisal
发布2019-06-14 21:11:00
4300
发布2019-06-14 21:11:00
举报

背景:

按照《Oracle Conecpt》的结构一起了解Oracle数据库,这是学习Oracle从入门到精通的基础。

前言《Introduction to Oracle Database》的历史文章

《Oracle Concept》前言-12c内容补充

《Oracle Concept》前言介绍-7

《Oracle Concept》前言介绍-6

《Oracle Concept》前言介绍-5

《Oracle Concept》前言介绍-4

《Oracle Concept》前言介绍-3

《Oracle Concept》前言介绍-2

《Oracle Concept》前言介绍-1

《Oracle Conecpt》 - 目录结构

《Oracle Conecpt》 - 初步认识1

第二章《Tables and Table Clusters》 历史文章

《Oracle Concept》第二章 - 21 (12c内容补充)

《Oracle Concept》第二章 - 20 (12c内容补充)

《Oracle Concept》第二章 - 19

《Oracle Concept》第二章 - 18

《Oracle Concept》第二章 - 17

《Oracle Concept》第二章 - 16

《Oracle Concept》第二章 - 15

《Oracle Concept》第二章 - 14

《Oracle Concept》第二章 - 13

《Oracle Concept》第二章 - 12

《Oracle Concept》第二章 - 11

《Oracle Concept》第二章 - 10

《Oracle Concept》第二章 - 9

《Oracle Concept》第二章 - 8

《Oracle Concept》第二章 - 7

《Oracle Concept》第二章 - 6

《Oracle Concept》第二章 - 5

《Oracle Concept》第二章 - 4

《Oracle Concept》第二章 - 3

《Oracle Concept》第二章 - 2

《Oracle Concept》第二章 - 1

第三章《Indexes and Index-Organized Tables》历史文章:

《Oracle Concept》第三章 - 2

《Oracle Concept》第三章 - 1

唯一和非唯一索引

索引能是唯一的或者非唯一的。唯一索引会确保键值列中不会存在相同的两个值。例如,不会有两个雇员具有相同的雇员ID。因此在唯一索引中,每个数据存在唯一的rowid。在叶子数据块中的数据仅会按照键值排序。

非唯一索引允许索引列中存在相同的值。例如employees表的first_name列可能包含多个叫Mike的值。对于非唯一索引,rowid会按照顺序包含在键值中,因此非唯一索引会按照索引键值和rowid(升序)进行排序。

Oracle的索引种不会包含所有键值列都为空的行,除了位图索引或者当聚簇键列值为空的情况。

索引类型

Oracle提供了几种索引方案,可以带来性能上的提升。可以将索引分为以下几类:

1. B树索引

这是标准的索引类型。对于主键和高选择度的索引非常适合。在连接列上创建B树索引,能根据索引列的排序快速检索数据。B树索引有以下几种子类型:

1.1 索引组织表

索引组织表是区别于堆表的,因为数据本身就是索引。参考“索引组织表概要”章节。

1.2 反键值索引

这种类型的索引,索引键的字节是反向排列的,例如103会按照301存储。字节反向排列可以让插入索引的请求分散到不同的数据块,减少争用。

1.3 降序索引

这种类型的索引会按照特定列降序排序的方式存储数据。参考“升序和教育索引”章节。

1.4 B树聚簇索引

这种类型的索引用来对表聚簇键设置索引。代替指向某行,键会指向含有和聚簇键相关行对应的数据块。参考“索引聚簇”这个章节。

2. 位图和位图连接索引

位图索引中,索引项会使用一个位指向不同的行。比较而言,B树索引项会指向单独的一行。位图连接索引是一种连接两张或更多张表的位图索引。参考“位图索引”这个章节。

3. 函数索引

这种类型的索引会对列使用函数转换,例如UPPER函数,或者表达式转换。B树和位图索引都可以使用函数索引。参考“函数索引”这个章节。

4. 应用领域索引

这种类型的索引是由用户在一个具体应用领域中创建的。物理索引不需要传统的索引结构,能在Oracle中以表或者外部文件的形式进行存储。参考“应用领域索引”。

另外,可以参考:

《Oracle Database Performance Tuning Guide》了解不同的索引。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年05月30日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com