概述
转自:http://www.hellodba.net/2010/10/ssd-database-2.html
主要内容概括如下
1.SSD与传统磁盘相比,第一是没有机械装置,第二是由磁介质改为了电介质
2.SD可以提供非常高的随机读取能力
3.erase-before-write
SSD的最小写入单元为4KB,称为页(page)
擦除的单位一般是128个page(512KB)
写入放大的问题
4.Wear leveling
基本原理是在SSD中设置了两个block pool,一个是free block pool(空闲池),一个是数据池(data block pool)
空闲池中取出新的block,将现有的数据和需要改写的数据合并为新的block,一起写入新的空白block,原有的block被标识为invalid状态(等
待被擦除回收),新的block则进入数据池
Wear leveling分为两种:动态损耗均衡和静态损耗均衡.动态算法只会处理动态数据,从均衡的效果来看,静态算法要好于动态算法,在数据迁
移的情况下会导致写性能下降。
通过为SSD预留更多空间,可以显著缓解写入放大导致的性能问题
5.数据库IO特点分析
数据库中的全表扫描是连续读IO,索引访问则是典型的随机读IO,日志文件是连续写IO,而数据文件则是随机写IO。
日志文件采用sequential logging,顺序写入的方式,可以有效降低磁盘寻道花费的时间,降低磁盘抬头时间,降低延迟.所以日志文件的顺序
写入可以被认为是“连续位置的随机写入”,瓶颈还是在IOPS,而不是吞吐量
数据文件采用in place update的方式,意思是数据文件的修改都是写入到原来的位置
6.flashcache
SSD适合读多写少的操作,作为数据库flashcache是优化方案中最简单的一种,它可以充分利用SSD读性能的优势,又避免了SSD写入的性能问题
SSD掉电后数据是不丢失的,这是最大优势。缺点在于flashcache存在丢失时的数据一致性问题,通常情况下都是丢失
7.性能实质:高的随机读,较高的连续写。
擦除有风险,算法进行优化。
8.应用:
flashcache作为内存和磁盘之间的二级cache,性能提升,价格介于memory和disk之间,作为两者之间的一层cache,可以在性能和价格之间找
到平衡。
最后
以上就是妩媚砖头为你收集整理的SSD性能介绍的全部内容,希望文章能够帮你解决SSD性能介绍所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复