NV-Shuffle:基于非易失内存的Shuffle机制
2018-03-13潘锋烽
潘锋烽 熊 劲
(计算机体系结构国家重点实验室(中国科学院计算技术研究所) 北京 100190)(中国科学院大学 北京 100049)(panfengfeng@ict.ac.cn)
非易失性内存(non-volatile memory, NVM)的出现为解决磁盘性能瓶颈问题提供了新的机会,本文中的NVM指的是基于内存总线接口、字节寻址的非易失内存.在内存计算的场景下,非易失性内存有着非常广泛的应用场景.与磁盘和DRAM相比,NVM的主要优势有:1)NVM有着与DRAM相接近的读写延迟和吞吐率,有望用来消除磁盘IO开销,提升系统的IO性能;2)NVM的存储密度比DRAM更大,与NAND Flash SSD相似,它能存放更多的数据;3)相比于内存,NVM具备非易失、可持久化的优势.随着工业界大力发展非易失内存,其进展相当迅速,2013年Micro公司推出了搭载Flash与DRAM的Hybrid DIMM[1].2014年,AgigA Tech公司推出了DDR接口的 NVDIMM[2-4].Intel与Micro联合推出的DDR接口的3D XPoint[5]产品预计2018年面市,3D XPoint闪存速度堪比内存,因此解决磁盘性能问题的一个较为直接的方式是替换存储介质,将传统的磁盘替换成NVM,这样使得内存计算中的数据读写能够获得NVM的性能,与此同时也保证了数据的持久化.
众所周知,Shuffle的性能是决定大数据处理性能的关键因素之一[6-9].由于传统Shuffle阶段的数据一般是通过磁盘文件系统进行持久化,所以影响Shuffle性能的一个重要因素是IO开销[7,10-11],NVM有助于解决内存计算在Shuffle阶段由于持久化所带来的IO开销.因此本文将NVM引入到Shuffle阶段中,但是由于NVM的性能接近DRAM,有研究工作表明,对于NVM现有的系统软件(NVM文件系统)开销过高,不能充分发挥NVM的性能[12-15].表1展示了在压缩[16]过程中文件系统各个部分的开销比例……
