什么样的列使用索引?
来源:互联网 发布:矩阵转换为灰度图像 编辑:程序博客网 时间:2024/06/02 11:19
这个问题以前经常面试别人,大多数的回答都是非常浅的。只回答重复度低的,为什么重复度低的就适合采用索引,好像很少有人能答出来。
先说一个前提,所有的系统瓶颈最终都落在io上,包括网络io和磁盘io,例如,一台机器cpu每秒可以执行5亿条指令,如果是7200转的磁盘的话,一分钟7200转,一转1/120秒,大概要9-11毫秒的样子。换句话说,一次磁盘访问的时间大概是40万条指令。所以我们希望的是能充分利用cpu,减少磁盘的访问次数。B+tree正好符合这一场景,增加了运算次数,减少了数据读取的次数。
关系型数据库大多采用的索引算法就是B+tree,树天生就是解决查找问题的,数据的重复度越低,越能体现出价值。对于重复的数据,只能使用rowid标示一下。
0 0
- 什么样的列使用索引?
- 什么样的列不适合创建索引?哪些列上不应该创建索引?
- 使用列索引创建筛选的视图
- 使用多列索引的注意事项
- mysql单列索引、多列索引的使用
- 什么样的sql不走索引
- 有效使用索引+索引列上所使用的操作符+避免对唯一索引列使用null+选择复合索引主列
- 使用索引的基本事项+选择索引列的原则+索引失效
- 无效的列索引
- 索引列的选择
- 无效的列索引
- 索引列的选择
- 使用索引的误区之六:为索引列都建立索引
- 使用索引的误区之六:为索引列都建立索引
- 使用索引的误区之六:为索引列都建立索引
- iOS 索引列 使用详解
- where条件对mysql多列索引的使用
- NET/C# 字段索引的使用简列
- Pro Android学习笔记(七五):HTTP服务(9):DownloadManager
- Extjs之自动消失提示框(Ext.example.msg)
- 通过__index实现创建子类对象
- Mistserver 介绍 - 一个轻量级高可扩展性的媒体服务器
- UVa:11732 strcmp() Anyone?
- 什么样的列使用索引?
- 没有文件扩展 vbs 的脚本引擎 解决方案
- [数论]HOJ 1991 Happy 2005
- 正则读写文件匹配
- 网站建设的原则及要点
- 写给未来的妻子
- AsyncTask
- 互联网网站的反爬虫策略浅析
- Testlink