社区
MySQL
帖子详情
IO
沉沦
2010-12-03 01:55:02
请问一下,为什么说对数据文件读取是用的随机IO,对日志文件时用的顺序IO呢?。。
能说明一下原理吗? 希望有详解。。
有图解更好。。。
...全文
98
14
打赏
收藏
IO
请问一下,为什么说对数据文件读取是用的随机IO,对日志文件时用的顺序IO呢?。。 能说明一下原理吗? 希望有详解。。 有图解更好。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
iihero
2010-12-09
打赏
举报
回复
随机IO:可以快速定位数据的位置. (这个,通过数据页的页表可以实现)
顺序IO:只能顺序读取,不能跳过当前块,读下一个日志项,实际上这是一种堆文件结构
jiahehao
2010-12-09
打赏
举报
回复
[Quote=引用 10 楼 m582445672 的回复:]
我的理解是:顺序IO指的是,用IO在磁盘上查找的数据是连续存放的.
随即IO指的是,用IO在磁盘上查找的数据是离散存放的.
日志文件指的在my.cnf里面的log= 配置文件..
那么为什么很多资料上说,我从数据库里面取数据,就会是随即IO呢?~ 不能是顺序IO吗
[/Quote]
IO的定义官方就是指写入读出的操作吧.我的理解,如果你数据物理上是顺序存储,你的IO就是顺序的.请版主斧正.不过我觉得此问题似乎与我们用户无关,因为你无法控制DB把数据写到某个具体位置.无从优化.
zuoxingyu
2010-12-06
打赏
举报
回复
这个问题需要继续探讨
顶起来
沉沦
2010-12-04
打赏
举报
回复
我的理解是:顺序IO指的是,用IO在磁盘上查找的数据是连续存放的.
随即IO指的是,用IO在磁盘上查找的数据是离散存放的.
日志文件指的在my.cnf里面的log= 配置文件..
那么为什么很多资料上说,我从数据库里面取数据,就会是随即IO呢?~ 不能是顺序IO吗
ACMAIN_CHM
2010-12-03
打赏
举报
回复
首先,楼主需要把 什么是
顺序IO
什么是
随机IO
,所指的
日志文件
是什么讲清楚,才有可能继续讨论这个问题。
可惜的是,楼主根本不原意就此作答。
zuoxingyu
2010-12-03
打赏
举报
回复
[Quote=引用 6 楼 m582445672 的回复:]
引用 5 楼 rucypli 的回复:
选取数据的时候 数据的位置是不确定的 所以是随机读取
写日志的时候肯定是写在日志尾部 位置确定
向这样说,貌似就算字段上有index,读取数据,也可能会产生大量随机IO了?
[/Quote]
INNODB的记录是按主键聚集的,索引和数据存储在同一个块里面,在移动索引的时候,同时会把记录位置也移动。所以对于INNODB表来说,用主键索引查询的时候,IO是连续的。其他第二索引查询的时候,先通过主键索引的指针找到主键,再通过主键找到记录,产生“2次搜寻”,这时候的IO是不连续的。
我说的可能也有问题,理解得不深,请斑竹斧正。
小小小小周
2010-12-03
打赏
举报
回复
事务日志在创建之初就是申请的连续的物理空间,而且每次写入都是紧接着之前的日志数据顺序的往后写入,基本上都是一个顺序的写入过程
沉沦
2010-12-03
打赏
举报
回复
[Quote=引用 5 楼 rucypli 的回复:]
选取数据的时候 数据的位置是不确定的 所以是随机读取
写日志的时候肯定是写在日志尾部 位置确定
[/Quote]
向这样说,貌似就算字段上有index,读取数据,也可能会产生大量随机IO了?
rucypli
2010-12-03
打赏
举报
回复
选取数据的时候 数据的位置是不确定的 所以是随机读取
写日志的时候肯定是写在日志尾部 位置确定
fxs_2008
2010-12-03
打赏
举报
回复
一般而言,日志在初始化时就申请了固定空间且一直打状态;
而数据库的磁盘除了递增表(无删除更新世界操作)外,磁盘是随机的
ACMAIN_CHM
2010-12-03
打赏
举报
回复
[Quote]IO是写入写出吗?还是读入读出呢?[/Quote]
IO 是 input / output
文件记录的IO一般是指文件记录访问方式,有随机,顺序等方式。
mysqldbd
2010-12-03
打赏
举报
回复
[Quote=引用楼主 m582445672 的回复:]
请问一下,为什么说对数据文件读取是用的随机IO,对日志文件时用的顺序IO呢?。。
能说明一下原理吗? 希望有详解。。
有图解更好。。。
[/Quote]
IO是写入写出吗?还是读入读出呢?
ACMAIN_CHM
2010-12-03
打赏
举报
回复
楼主能解释一下什么是
顺序IO
,什么是
随机IO
? 另外你的
日志文件
是指什么?
commons-fileupload-1.2.1.jar和commons-
io
-1.3.2.jar程序文件
commons-fileupload-1.2.1.jar和commons-
io
-1.3.2.jar 案例上传: http://hi.baidu.com/lichao77821/blog
18个
io
s 项目源代码
18个
io
s 项目源代码 各种布局 控件使用 及扩展视图 自定义UITableViewCell。实现各种样式的表格输入界面、自定义Tab Bar的文字、颜色和图片加箭头、列表个性化列表项、
IO
S欢迎界面等。
【t
io
-websocket】1、T-
IO
简介
—— T-
IO
1、官方文档地址 https://www.t
io
cloud.com/doc/t
io
/ 2、GITEE地址 https://gitee.com/tywo45/t-
io
3、旗下产品 t
io
-core t
io
-websocket-server t
io
-http-server t
io
-udp-server 4、t-
io
应用场景-...
IDEA创建SpringBoot无法连接https://start.spring.
io
,连接超时的解决办法
这是由于spring-boot需要访问https://start.spring.
io
外网,但是由于国内的局域网限制导致的。 解决办法: 进入到IDEA的setting 搜索HTTP Proxy 选择Auto-detect proxy settings 点击最下面的Check connect
io
n...
五种
IO
模型:操作系统五种
IO
模型大全
包含操作系统的应用与内核,CPU指令等级,...网络
IO
,磁盘
IO
,内存
IO
,异步/同步
IO
,阻塞/非阻塞
IO
,以及操作系统的五种
IO
模型,阻塞
IO
,非阻塞
IO
,复用
IO
(select、poll、epoll)、信号驱动
IO
模型,异步
IO
模型等...
MySQL
56,687
社区成员
56,710
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章