redis学习笔记-磁盘、内存、IO

磁盘、内存、IO

数据存在磁盘
秒的单位 秒>毫秒>微妙>纳秒
磁盘的两个指标:
1.寻址:寻址的速度是ms级别的
2.带宽:单位时间内有多少字节流。

内存的指标
1.寻址:速度是ns,磁盘比内存在寻址上满了10w倍
2.带宽:很大,走的是cpu的前总线

I/O buffer:成本问题
磁盘中的磁道和扇区,一扇区512字节byte,如果磁盘容量很大,而扇区很小,势必会增大索引成本。
操作系统无论从磁盘读取多少数据都是以4K为单位。
随着文件变大,速度会越慢,磁盘IO会成为瓶颈。

磁盘和磁道、扇区的关系
1.硬盘“4K”和4k对齐:
	4k对齐指的是“4kB扇区对齐”,硬盘读写的单位是扇区,大小是4kB,计算机读写单位是簇,大小一般默认为4kB,4k对齐了,也就意味着某个簇对应着某个扇区,计算机读簇的时候硬盘只要读一个扇区就行了,如果没4k对齐,硬盘就要读两个扇区。
	
	2011年后的硬盘物理扇区大小为4k,磁头在磁盘盘片上读写数据的最小单位是4k。磁头无法向扇区内写入512b大小的数据,一次最少写入4k。下图是我2014年买的希捷移动硬盘,用diskgenius测出的信息,注意上边写的扇区大小512b指的是逻辑扇区,硬盘实际的物理扇区是4k。
	
2.为什么是4k,而不是8KB,16KB,
	这是一个折衷的过程,切的太小,管理号多,查找效率就慢;
	切的大,管理号少,但是即使1bytes的文件也要占用对齐大小的容量,容易造成存储空间的浪费。
	
	如果一个区域足够小,会再来一个更大的成本,区域过多,查找变慢。
	一个扇区大概有512byte,如果数据过大,带来成本变大:索引
	所以在格式化磁盘的时候,会有4k对齐,即基本单位,最小为4k,所以在操作系统中,无论你读多少,最少都是4k从磁盘中拿。在MySQL中,innodb引擎,每次读取,最小单位为16k。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值