文件体系在NVMe SSD上的功能体现剖析51CTO博客 - AG环亚娱乐

文件体系在NVMe SSD上的功能体现剖析51CTO博客

2019年03月09日09时02分04秒 | 作者: 鸿哲 | 标签: 体系,文件,功用 | 浏览: 2841

文件体系是拜访存储的一种常用方法,现在常用的文件体系都是针对磁盘的特性进行规划的。例如,为了处理磁盘随机小数据拜访的问题,在文件体系层面引入了Page cache机制,运用内存缓存对这种拜访进行加快。大多数事务都会存在数据局部性,因而,经过这种Page cache机制能够很好的提高文件体系的功用。别的,文件体系的数据布局也会考虑磁盘的特性,元数据聚合寄存在一起,这样能够高效的完成元数据的寄存,防止磁盘颤动。如下图描绘,包含文件体系在内的存储软件栈在各个层次都会对磁盘颤动问题进行优化。

 


在NVMe SSD替换磁盘的过程中,咱们发现传统文件体系在许多方面体现的不尽人意,导致体系功用变差,无法充分发挥NVMe SSD的功用。其间主要原因有如下两点:


1,  传统存储软件栈选用堆叠式的方法,而且存在较多层级。每个层级封装成一个模块,构成了所谓的“模块化规划”。在面向磁盘的存储体系中,这种规划方法十分好,带来的价值是存储软件栈规划与完成的灵活性。用户需求添加一个功用的时分,能够在软件栈中堆叠一个模块,十分的高效,软件功用与质量能够得到很好的操控。可是,在面向高功用介质的存储体系中,存储盘现已不再是功用瓶颈点的主因,存储软件栈本身变成了严峻的功用瓶颈点。而传统的软件栈在规划与完成的时分底子没有考虑本身的瓶颈问题、软件的功率问题,底子没有考虑怎么高效运用CPU的问题。然后导致传统软件栈使得处理器的运转功率极低,成了功用瓶颈的主要因素。特别最近几年处理器往多核化方向开展,根据“存储是IO密集型使用”为指导思维的存储软件栈,很少选用多核并发处理的规划思维,因而无法发挥多核化带来的价值。高功用存储介质恰恰需求多处理器的支撑,功用的发挥需求得益于多处理器的才能。在这一点上,传统软件栈的规划存在天然缺点,其主要原因仍是没有考虑到IO功用瓶颈点的搬运,所以,存储软件栈在担负较重的情况下,本身成为瓶颈点,功用低下在所难免。



2,  包含文件体系在内的传统存储软件栈的规划是面向磁盘介质的,磁盘介质与高功用NVMe SSD比较存在天壤之别的特性。关于NVMe SSD而言不存在随机拜访功用颤动的问题;可是会存在事务IO影响写扩大的问题,以及单个SSD存在写后读功用极差等问题。面向磁盘规划的一些机制对SSD而言没有价值,而且在有些使用场景下会极大的影响全体功用。例如好像能够添加随机拜访功用的Page cache,在NVMe SSD上会对事务功用形成影响。在随机拜访的情况下,Page cache的命中率比较低,而且会不断的在SSD与内存之间进行page页的换入换出,这种频频的换入换出操作会添加很多的无用操作,在软件规划存在竞赛锁的情况下,文件体系的功用体现会大打折扣。


在高功用介质上,咱们比照测验了裸盘与文件体系之间的功用。下图比照了4KB与8KB在随机拜访情况下的功用。从图中能够看出,在4KB与8KB随机读情况下,文件体系的功用要远远低于裸盘功用。此刻咱们发现文件体系在忙于Page Cache的换入换出操作。在4KB与8KB随机写情况下,两者功用挨近。


在64KB与128KB大压力数据拜访情况下,文件体系与裸盘的功用挨近,如下图所示:


从测验与剖析的成果能够看出,Ext4文件体系在随机拜访方面功用丢失较大,在其他方面两者的功用附近。因而,Page cache等战略在SSD上起到的作用根本没有,能够疏忽。此外,咱们也能够体会到传统软件栈不只没有优化高功用存储介质,反而带来了功用以及寿数等方面的影响。所以,SSD在数据中心等使用中大规划运用时,存储软件栈需求做深层次革新。


版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表AG环亚娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章