持久内存架构与工程实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

推荐序二

持久内存并不是一个全新的概念。学术界早在20世纪就已经开始了对持久内存颗粒和应用技术的研究。随着移动互联网的蓬勃发展,应用接入端对存储系统的要求不断提高,数据规模越来越大,数据访问频率越来越高,曾被寄予厚望的Flash技术,愈发难以满足需求。从早期的Flash DIMM(一种将Flash颗粒贴在DIMM条上的技术),到NVDIMM标准的确立,再到基于DRAM+Flash的NVDIMM-N产品的问世,业界关于持久内存的尝试从未停止。但真正把持久内存从实验室推向工业界的是2016年英特尔公司和美光(Micron)公司联合发布的3D-XPoint技术,以及之后英特尔公司基于3D-XPoint研发的英特尔傲腾系列产品和配套的软硬件架构。

Flash是一项被熟知的技术,手机、计算机等各类电子产品都使用Flash作为数据存储介质。在数据中心内部,Flash作为主要的高速存储介质,响应着峰值高达每秒上亿次的请求。作为硬盘的替代品,Flash非常好地解决了读写延时和存储密度低等问题。然而,Flash的读写长尾延时、页对齐访问、读写放大及擦写寿命短等问题,限制了Flash的使用场景。此外,从平均访问延时上分析,Flash百微秒的量级与内存几十纳秒的量级有着约103量级的差距。简单来说,访问一次Flash的耗时与访问1000次内存的耗时相同,存储系统中的数据持久化操作仍是突出的性能瓶颈。传统的DRAM,由于其容量有限且数据易失,无法满足数据量和编程模型的需求。持久内存,尤其是3D-XPoint技术的出现,在一定程度上解决了这些问题。

持久内存拥有比Flash更低的读写延时、更稳定的QoS、更长的寿命,其近似内存的读写访问模式可以提供更好的性能。利用3D-XPoint技术的高存储密度,可以将单台机器的内存容量轻松扩展到几TB。借助持久内存的数据非易失特性,可以重新构建存储系统的数据持久化架构,实现更好的服务质量和更高的数据恢复效率。然而令人遗憾的是,国内关于持久内存的研究较少,且缺乏系统性,对这项技术感兴趣的人很难通过网络获取相关资料。已经使用持久内存技术的团队,对该技术的了解往往也只停留在表面。这极大地限制了技术人员对持久内存的技术探索和规模部署,导致一些适合部署持久内存的场景还在使用不适合的旧技术,甚至干脆不能提供满足需求的策略。

这本由英特尔公司一线技术人员编写的《持久内存架构与工程实践》,详细地介绍了持久内存技术的软硬件架构。相信有一定计算机体系结构基础的读者,在读完这本书之后,对持久内存会有更清晰的认识,进而可以尝试在自己的项目里使用持久内存。我阅读本书之后,有如下体会。首先,本书的知识结构非常系统。不像网络上关于持久内存的只言片语,或者一些应用场景中对持久内存介绍的浅尝辄止,本书比较系统和全面地介绍了持久内存的原理、架构及使用模式等。其次,内容有针对性且通俗易懂。本书作者来自英特尔公司一线技术团队,他们在推广持久内存技术的过程中,汇总了业务团队和一线研发人员最关注的问题,并在书中对这些问题进行了有针对性的解答和介绍,内容鞭辟入里。最后,本书还集成了持久内存工程实践的例子。这些工程实践是过去一年中知名互联网厂商规模部署持久内存的真实案例,时效性强,极具参考性,是不可多得的技术资料。

国内的技术人员为了解最新技术,在很多时候只能阅读翻译的外文书籍,或者查阅国外的资料,因此获取的资料要么已经过时,难以举一反三,要么翻译不符合我们的语义,难以全面理解,要么举例离我们的生活太远,不能很好领悟。本书完全由国人编写,面向国内技术人员,书中的案例更多地取自国内场景,在确保严谨的同时,为读者带来了很好的阅读体验。

在移动互联网时代,越来越多的国内厂商探索出了有自身特色的应用。希望这本书可以帮助读者在自己的场景中,借助持久内存,创造出更大的价值。

感谢李志明、潘丽娜、朱大义、张志杰和整个英特尔团队,在百度导入持久内存技术的过程中给予的帮助。谢谢!

张家军

系统部高级经理

百度

2021年1月