网站首页 > 教程分享 正文
进行SQL优化的过程中,首先需要了解语句相关对象的情况。数据库对象设计的好坏,会直接影响相关对象语句执行的效率。因此,有时在SQL语句实在无法优化的情况下,可以考虑通过修改对象的结构来完成优化。
索引可以说是Oracle数据库中除了表以外最重要的对象了。通过添加索引来提高查询性能,也是最为常见的一种优化手段。甚至很多非DBA人员认为,数据库优化就是加索引。这虽然说有些偏颇,但也说明了索引对于优化的重要意义。
B树索引
B树索引是Oracle数据库的默认索引,也是最为常见的一种索引。
B树索引整个索引结构就是一个平衡树(Balance Tree),这也就是称为B树索引的原因。在整个树形结构中,包含有3种节点,分别是根节点(Root)、分支节点(Branch)、叶子节点(Leaf)。有的简单的索引只有根节点和叶子节点。在根节点或分支节点中,存在一组键值范围,当根据条件访问到这个节点时,根据范围路由到不同的分支节点或叶子节点。
位图索引
位图索引是另外一种较为常见的索引,虽然说是较为常见,但也仅限于个别场景,其主要适用在分析型数据库中。其原理与B树索引完全不同。在Oracle的优化器中,个别场景下可以将两类索引相互转换。
其他索引
上面我们谈到了最为常见的两种索引类型,下面再看看其他索引类型。
从本质上来讲,它们还是B树或者位图索引。
函数索引
函数索引就是将一个函数计算的结果存储在列中,而不是存储列数据本身。
虚拟列索引
虚拟列是在11g中新引入的一个技术。
从字面就可以理解,创建的列不真正物理保存,而只是一个定义。
而基于这个列创建的索引,就是虚拟列索引。在某种程度上,
虚拟列索引和上面谈到的函数索引有些类似
虚拟索引
Oracle可以通过NOSEGMENT子句命令创建一个
永远不会使用且不会为其分配任何盘区的索引。
不可见索引
不可见索引不是一种特殊的索引类型,而是使索引对优化器“不可见”,这样就没有查询会使用它了。这对于评估索引使用效果非常有帮助。
压缩索引
Oracle中的索引键允许压缩存储索引键中前面重复的部分,并且是每个叶块而不是每个叶块中的每行存储重复的值。
复合索引
当某个索引包含有多个已索引的列时,这个索引就称为复合索引。
反转索引
反转索引是一种特殊的B树索引。它将索引列中列值的每个字节的位置反转。
猜你喜欢
- 2024-10-25 SQL查询慢,是因为没用对索引(sql查询很慢怎么解决)
- 2024-10-25 索引让一系列最熟悉的SQL语句飞起来了
- 2024-10-25 Oracle优化-建立索引(三)(oracle创建索引慢)
- 2024-10-25 大数据Apache Druid(二):Druid数据结构及架构原理
- 2024-10-25 OpenGL中位图的操作(opengl图像处理)
- 2024-10-25 实时数仓入门训练营:Hologres 性能调优实践
- 2024-10-25 DBA日记之Oracle索引设计原则二(oracle 索引 高效设计)
- 2024-10-25 DBA日记之Oracle数据库索引一(索引 oracle)
- 2024-10-25 九、颜色模式之索引颜色(索引色的色彩总数是多少)
- 2024-10-25 oracle索引和用户权限(oracle 创建索引权限)
你 发表评论:
欢迎- 最近发表
-
- IT之家学院:使用PIN或密码审批管理员权限
- Yarn 安装的时候提示错误 error:0308010C:digital envelope routines
- Windows常用的一些CMD运行命令(windows常见的命令)
- 电脑忘记开机密码10秒解决(戴尔电脑忘记开机密码10秒解决)
- 如何下载Windows 10聚焦提供的锁屏壁纸
- Windows CMD 命令大全:简单粗暴收藏!
- 系统小技巧:解决CHKDSK只读模式问题
- Windows的cmd都有哪些奇技淫巧?这22个CMD命令记得收藏起来!
- windows错误代码0x80072EE2?win10系统更新错误问题的处理方法
- Windows 10技术预览版快捷键方式汇总
- 标签列表
-
- css导航条 (66)
- sqlinsert (63)
- js提交表单 (60)
- param (62)
- parentelement (65)
- jquery分享 (62)
- check约束 (64)
- curl_init (68)
- sql if语句 (69)
- import (66)
- chmod文件夹 (71)
- clearinterval (71)
- pythonrange (62)
- 数组长度 (61)
- javafx (59)
- 全局消息钩子 (64)
- sort排序 (62)
- jdbc (69)
- php网页源码 (59)
- assert h (69)
- httpclientjar (60)
- postgresql conf (59)
- winform开发 (59)
- mysql数字类型 (71)
- drawimage (61)
本文暂时没有评论,来添加一个吧(●'◡'●)