论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
数据库
›
Mysql
›
唯一/普通索引的选择?change buffer
唯一/普通索引的选择?change buffer
小小小幸运
金牌会员
|
2023-2-3 21:45:18
|
显示全部楼层
|
阅读模式
楼主
主题
945
|
帖子
945
|
积分
2835
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
change buffer
一块存储了更新操作的缓冲区。它存在于 MySQL 的 buffer pool 中。
它是怎么作用的:
对于普通索引,如果更新操作的目标page页不在内存中,那么会先将这些更新操作记录在change buffer中。等到 select 操作将该目标page页查询到内存时会执行更新。这样减少了随机访问磁盘的次数。
对于唯一索引,由于执行更新操作时必须先将目标page页读取到内存中判断唯一性,因此没有必要使用该buffer,还能减少维护成本。
适用场景:
写多读少的场合。多次更新操作,然后同时merge buffer中的记录,最大限度的利用了一次磁盘访问。
如果是普通索引,在更新完之后马上就查询刚插入的那条记录,这样并不能降低磁盘访问。
结论:
业务允许的情况下,尽量选择普通索引,因为二者查询效率几乎无差异,而更新效率在change buffer的维护下,普通>唯一索引。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
小小小幸运
金牌会员
这个人很懒什么都没写!
楼主热帖
青龙2.10.13 稳定版+xdd-plus+阿东教程 ...
收藏:再谈软件定义存储发展及现状 ...
Ubuntu如何安装Mysql+启用远程连接[完 ...
软件项目管理 7.4.5.进度计划编排-敏捷 ...
【学习笔记】WPF-01:前言
5.2 基于ROP漏洞挖掘与利用
京准电钟北斗时钟服务器,GPS网络时间服 ...
权限提升(1)
京东张政:内容理解在广告场景下的实践 ...
驱动开发:内核字符串转换方法 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
鸿蒙
.Net
云原生
分布式数据库
网络安全
程序人生
前端开发
DevOps与敏捷开发
Oracle
移动端开发
快速回复
返回顶部
返回列表