Oracle 维护数据的完整性 一 索引

简介:索引是用于加速数据存取的数据对象,合理的使用索引可以大大降低i/o 次数,从而提高数据的访问性能.

当我们从一张表中检索我们需要的数据是,oralce往往会进行全表扫描,就是遍历所有的数据行,来找到我们需要的数据,并返回结果集给我们,这个过程就像下图:

当这个人需要去图书馆找一本书,唯一的方式就是把这个图书馆的书,全部过一边,直到找到自己想要的书,如果这个图书馆的书少的话,这个时间还可以接收,但是如果这个图书馆有1000万本书,那么你懂的,这辈子能不能找的到都不一定,毕竟人没有计算机那么快的速度。

当我们查询oracle表中的数据时,oracle也是这么做的,检索全表,直到找到符合要求的数据,并返回。这个过程是非常影响用户体验的,所以必须通过索引来解决这个问题。

(个人的理解,大神可视而不见)索引的作用:假设读者经常根据姓名去查一些书籍,那么就根据姓名将整个图书馆的书籍进行分类,那么我们就会得到一个标签的集合,里面存储的是一个个id为姓名的标签,而标签里面的内容是对应数据库记录的位置,假设我们这里需要查询金庸的书籍,那么我们只要去标签集合插到金庸的标签,然后根据标签上记录的金庸书籍的位置,快速的查询我们需要的书籍。就不需要检索全表,而是通过查询索引,从而得到我们需要的数据,但是索引是不能滥用的,下面是使用索引需要注意的地方:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逸鹏说道

记一次SQLServer的分页优化兼谈谈使用Row_Number()分页存在的问题

最近有项目反应,在服务器CPU使用较高的时候,我们的事件查询页面非常的慢,查询几条记录竟然要4分钟甚至更长,而且在翻第二页的时候也是要这么多的时间,这肯定是不能...

31612
来自专栏Python爬虫实战

MySQL从零开始:数据库简介

从字面意思理解,首先数据库是一个存放东西的库,里面存的东西是数据。以下解释来自百度百科:

1352
来自专栏数据和云

新书连载:Oracle数据库的跟踪和分析方法

编辑说明:《Oracle性能优化与诊断案例精选》出版以来,收到很多读者的来信和评论,我们会通过连载的形式将书中内容公布出来,希望书中内容能够帮助到更多的读者朋友...

4499
来自专栏互联网开发者交流社区

SQL基础用法(实例二)

1407
来自专栏数据和云

【云和恩墨大讲堂】复合索引与绑定变量

讲师简介 ? 邓秋爽(小鱼) 云和恩墨专家,有超过5年超大型数据库专业服务经验,擅长oracle 数据库优化、SQL优化和troubleshooting 今晚的...

3616
来自专栏文渊之博

列存储索引1:初识列存储索引

     2012以后提供了一种不同于传统B树结构的索引类型,就是内存列存储索引。这种索引应用了一种基于列的存储模式,也是一种新的查询执行的批处理模式,并且为特...

2295
来自专栏杨建荣的学习笔记

MySQL里面的JSON特性

在我们梳理的开发规范里面,明确规定对于lob类型的使用原则只有一个,那就是尽量不要使用。但是很明显,开发同学走到了我们前面,如果你碰到开发同学使用JSON数据类...

1260
来自专栏数据库

MySQL数据库性能优化之四

优化目标 1.减少 IO 次数 IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 ...

2046
来自专栏Linyb极客之路

一位Java工程师的阶段性工作总结

1.1.1、通常的模块分布:一般如果你要实现一个web应用,你从后台将数据展示到前端页面,在一个比较大的公司,你少不了跟其他项目有交集(你调用他的接口,他依赖你...

1063
来自专栏james大数据架构

你真的会玩SQL吗?三范式、数据完整性

你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接、外连接 你真的会玩SQL吗?三范式、数据完整性 你真...

2147

扫码关注云+社区

领取腾讯云代金券