首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
请详细描述数据库索引的工作原理,并阐述索引的好处和不足
[问答题]
请详细描述数据库索引的工作原理,并阐述索引的好处和不足
添加笔记
求解答(0)
邀请回答
收藏(18)
分享
纠错
3个回答
添加回答
1
牛客408956483号
数据库索引是为了增加查询速度而对表字段附加的一种标识。
DB在执行一条Sql语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索结果集合。
发表于 2022-03-11 02:02:05
回复(0)
0
露西Lucy
常直观的好处是降低查询时间,降低排序的成本,减少对CPU的消耗。坏处也非常直观,首先需要额外的空间来存储索引,其次其更新和维护需要消耗资源(例如插入或删除了值,索引就得跟着调整)。
发表于 2022-03-11 17:04:39
回复(0)
0
牛客184739658号
一句话概括就是——索引是为
优化查询效率而
维护的数据结构,例如mysql的Innodb存储引擎就是通过平衡二叉树来维护索引结构的,将查询复杂性从O(n)降低到了O(log(n))。
如图所示,为了加快col2的查找,构建的平衡二叉树将查找比对此时降低到了3次。
索引的非常直观的好处是降低查询时间,降低排序的成本,减少对CPU的消耗。坏处也非常直观,首先需要额外的空间来存储索引,其次其更新和维护需要消耗资源(例如插入或删除了值,索引就得跟着调整)。
所以索引是有利有弊的。
编辑于 2022-02-22 22:17:31
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
阅文集团
测试开发工程师
2021
来自:
2023届阅文测试开发...
上传者:
小小
难度:
3条回答
18收藏
1626浏览
热门推荐
相关试题
五月份的商品销售额为60万元,该月...
数据分析师
途虎
2021
评论
(2)
来自
途虎养车2023秋招数据...
消消乐
Java工程师
C++工程师
iOS工程师
安卓工程师
运维工程师
前端工程师
算法工程师
PHP工程师
测试工程师
安全工程师
c#工程师
数据库工程师
大数据开发工程师
vivo
2020
嵌入式工程师
数据挖掘工程师
测试开发工程师
评论
(21)
下列哪两个变量之间的相关程度高
数据分析师
途虎
2021
评论
(4)
来自
途虎养车2023秋招数据...
什么是HTTP协议?什么是HTTP...
阅文集团
测试开发工程师
2021
评论
(0)
来自
2023届阅文测试开发方...
可通过哪些方式预防死锁? 请详细说明。
阅文集团
测试开发工程师
2021
评论
(1)
来自
2023届阅文测试开发方...
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题