文章插图
概述人类存储信息的发展历程大致经历如下:
由于是个人凭着自己理解总结的 , 因此可能不一定精确 , 但是毋庸置疑的是 , 在当代 , 各大公司机构部门的数据都是维护在数据库当中的 。数据库作为数据存储介质发展的最新产物 , 必然是具有许多优点的 , 其中一个很大的优点就是存储在数据库中的数据访问速度非常快 。数据库访问速度快的一个很重要的原因就在于索引index的作用 。也就是这篇文章的主要想介绍的内容 , 为什么索引可以让数据库查询变快?
计算机存储原理在理解索引这个概念之前 , 我们需要先了解一下计算机存储方面的基本知识 。
我们知道数据持久化之后存在了数据库里,那么我现在的问题是数据库将数据存在了哪里?答案显然是存在了计算机的存储设备上 。就个人电脑而言 , 数据被存在了我们的电脑存储设备上 。
计算机的存储设备有很多种 , 其中速度越快的越贵 , 因此容量也往往越小例如我们的RAM随机存储器 , 也就是大家平时说的内存条 , 速度慢的就相对便宜例如我们的硬盘 。而我们的数据往往都是被存在最慢的存储设备硬盘上的 , 因为存在当中的数据在断电之后依然存在 。
计算机的存储介质有多种 , 例如硬盘 , 例如高速缓存 , 不同的存储介质的数据读取速度是不一样的 。例如 , 像RAM这样的易失性存储设备的读写操作就非常快 , 访问其中的数据几乎没有延迟性 。由于这个原因 , 计算机操作系统的设计是这样的:数据永远不会直接从硬盘等机械设备中取出 , 而是首先从硬盘转移到更快的存储设备 , 例如RAM , 从RAM当中应用程序直接按需获取数据 。
计算机内部的机械硬盘是下面这样的:
在一个典型的硬盘驱动器中可以有很多个盘片 , “盘片”在外观上非常类似于一个光盘(但具有很高的存储容量) 。盘片又被磁道分条 , 同时一个盘片又可以分为扇区 。
要获取数据 , “盘片”需要由主轴进行旋转 。大多数硬盘供应商都提到了主轴旋转的速度 , 例如 , 7200转/分和15000转/分 。磁盘中的数据总是以扇区的固定大小倍数表示 。因此 , 如果要从硬盘访问数据 , 需要执行以下步骤 , 这也是性能开销的主要来源 。
确定数据所在的正确磁道 , 并将磁头移动到该磁道 。即通常说的寻道 。让“主轴”旋转盘片 , 使正确的扇区位于“磁盘头”下方 。从扇区开始到扇区结束获取整个数据 。如果数据恰好分布在连续扇区上 , 那么它将提高获取数据的性能 。因为主轴和磁头本身不需要移动/旋转 , 也就没有太多开销 , 但是大多数时候这种开销是存在的 。
由于存在这种开销 , 我们不能直接从硬盘获取数据 。RAM的存储器高性能的背后的主要原因是它没有像硬盘那样的机械运动部件 。但是尽管RAM的性能很高 , 但它当中的数据却不会用作永久存储 , 断电之后就会消失 , 重新启动之后就什么都没有了 , 这是我们需要硬盘来进行持久化的原因所在 。数据库中的数据毫无疑问就是存放在硬盘当中的 , 因此访问数据库中的数据不可避免地会经历磁盘操作的开销 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 高球球杆的种类解析
- 解析产后抑郁症怎么办?产后抑郁症七大预防措施
- 烈日灼心真相是什么 烈日灼心深度解析
- 无法索引原因和解决措施 百度硬盘搜索无法索引
- 图文解析其实操步骤 电脑重装系统怎么一键备份还原
- 解析mini迅雷功能应用技巧 mini迅雷怎么写入软件
- 全面解析早晚练瑜伽的好处
- 解析led指示灯电阻计算公式 led指示灯接220v电阻怎么算
- 2者基本区别解析 java引用传递和值传递的区别
- 超详解析OSI模型知识点 一二三层交换机的区别