SCM新介质未来方向思考和探讨

存储
Storage Class Memory (SCM)是非易失性内存,该类介质的存取速度略比内存慢,但是远快于NAND类介质。本文对该类介质的特性及使用方法做了简单总结和介绍。

[[410663]]

Storage Class Memory (SCM)是非易失性内存,该类介质的存取速度略比内存慢,但是远快于NAND类介质。本文对该类介质的特性及使用方法做了简单总结和介绍。

目前在研的SCM介质种类繁多,但是比较主流的有PCM、ReRAM、MRAM和NRAM四大类产品。

PRAM(Phase-Change RAM)利用特殊合金材料在晶态和非晶态下的导电性差异来表示0或者1数据。其优点是结构简单,容易实现大容量、同时具备低成本等特点。

主要用于Cache加速和Cache内存应用,考虑到PRAM的成熟度、对热度敏感和写穿透等因素,在应用中一般搭配DRAM或SRAM一起使用,在填补RAM和Storage之间的性能、容量差距的同时,形成具有分级能力的高速Cache应用资源池;其典型代表为Intel的3D Xpoint。

ReRAM(Resistive RAM)通过在上下电极间施加不同的电压,控制Cell内部导电丝的形成和熔断的状态对外呈现不同的阻抗(忆阻器)值来表示数据;目前典型代表厂商为HPE和Crossbar。

HPE提出了忆阻器内存技术,并计划在新型计算机架构The Machine中使用,未来成为取代SRAM、DRAM形成通用内存(Universal Memory),主流的SCM技术如下:

MRAM(Magnetic RAM)磁性随机存储器通过电流磁场改变电子自旋方向来表示不同数据状态。比较适用于CPU的高速缓存(如L2 Cache),代表厂商为Toshiba和Everspin。

NRAM(Nantero’s CNT RAM)碳纳米管随机存储器采用碳纳米管作为开关,控制电路通断表示不同的数据状态。由于碳纳米管尺寸非常小并且具备极强的韧性,因此NRAM密度可以很高、寿命也比较长,理论功耗也比较低。

随着大数据时代的到来,以及多核、分布式、内存计算、云等技术的不断发展,应用场景对存储系统的要求越来越高,SCM技术的出现为存储系统的发展提供了新的路径。在未来,新型非易失存储介质将进一步在计算机存储系统中崭露头角,特别是当前Intel已经推出了它的SCM技术——3D XPoint,而针对以此为代表的SCM介质在系统级的应用,仍有很多挑战性的问题需要深入研究,这些研究,将可能从以下几个方面展开,特此交流探讨,以启发我们对未来存储系统以及未来上层应用的思考(本文中讨论的研究方向不涉及介质自身的研究和芯片级别的研究):

1、基于SCM的存储系统的组织结构方法研究

当前存储系统的组织结构是专为易失、读写差异小、几乎无寿命问题的DRAM以及传统的硬盘、NAND等存储介质而设计的,这种系统组织结构对于SCM而言是不适用的,无论是当前的内存管理方法、访问接口设计,还是I/O请求调度等都没有充分考虑SCM的缺点,比如典型的SCM介质PCRAM(相变存储器),其寿命、性能、读写不均衡等问题,都会导致当前技术不能够充分发挥介质的特性,同时还可能会将介质的弱点放大,不利于构建面向未来大数据和内存计算环境的高性能低功耗、大容量的存储系统。

如上所述,从SCM、DRAM、NAND Falsh等多种介质的优缺点出发,研究SCM在异构混合存储系统中的组织方法,合理组合多种存储介质,构建多介质的异构混合存储环境,建立可以充分发挥各存储介质特性的体系结构,解决多介质异构混合存储时的系统优化设计问题,实现新型非易失存储器与现有存储技术和系统的完美融合。

2、基于SCM的存储系统的访问方法研究

传统存储系统中的访问方法是立足于DRAM、NAND Falsh等设计的,它将不再适用于具有可字节编址和位修改等特性的SCM和DRAM,部分SCM介质的读写不对称使其难以按流水线方式执行读写混合I/O请求,且当前SCM与现有内存系统在访问特性上有显著差异,与此同时SCM支持本地修改等异于NAND Falsh的特性也使得当前外存领域的访问方式需要优化和改进。

研究基于SCM存储系统的多接口适配的访问方法,以匹配新型非易失存储器的特性,从而隐藏多介质在访问粒度、延迟、带宽及寿命等方面的差距,提升存储系统的性能。未来研究将可能包括:

①研究SCM在内存环境中字节粒度寻址的读写访问方法,充分挖掘SCM通道间、芯之间以及芯片内部的多层次访问并行性;

②研究在外存环境中块粒度寻址的高效读写访问方法,并遵循业界针对非易失存储器的接口标准(如NVMe协议);

③优化访问路径,减少系统I/O调用给性能带来的影响;

④利用SCM的读写特点来优化读写操作和流程,以此减少访问延迟;

⑤立足SCM特性优化系统中的数据结构,减少对SCM无用的写操作和写入数据量,以提升系统性能和寿命。

3、基于SCM的存储系统数据可靠性研究

随着工艺制程的降低,非易失存储器的存储单元不断变小,当SCM采用更小制程、提供更高存储密度和更大容量时,其存储单元的错误率随之升高.同时,SCM存储单元的可擦写次数有限(108~1012),频繁的擦写会导致芯片单元很快到达寿命极限.这些将使存储系统面临数据发生错误、损坏以及丢失的风险,对数据可靠性造成了极大的威胁。

未来的研究将立足于SCM的特性,通过多种途径来保障数据的可靠性,研究将可能在以下几个方面展开:

①研究降低当前已有的纠错机制(软硬件)所需的开销;

②研究可配置、适应数据集属性的组合校验算法,即区别不同属性的数据集,根据其所需的可靠性需求采用不同纠错能力和开销的校验算法,以平衡其纠错强度和校验开销;

③研究新的通过减少写操作次数、写入数据量来提升SCM的寿命的策略;

④研究新颖、可用范围广的磨损均衡策略,在现有磨损均衡基础上进行创新、优化,设计出可应用于不同需求环境下的磨损均衡策略,提升SCM寿命;

⑤研究基于SCM的坏块复用和数据容错机制,进一步增加SCM的使用寿命,提高数据可靠性;

⑥研究数据一致性的保障和维护,根据存储系统数据一致性需求、访问接口粒度等因素,设计低开销、多路径的数据更新策略和数据一致性维护方法。

4、基于SCM的存储系统数据安全性保障研究

由于SCM具有非易失性,即当系统断电时,SCM存储的数据并不会消失,从而通过恶意修改数据所导致的执行状态可能是持久的,即使设备断电,系统也会存在冷启动攻击的风险.因此非易失特性会使系统被入侵和数据被盗窃的风险增大.所以当采用SCM构建内存子系统时,需要考虑数据的安全性保障机制。

对此,未来该领域还需要研究针对操作系统的加密机制,通过加密模块对写入SCM的数据进行加密,防止存储数据被窃取或泄密的情况发生;研究利用访问权限控制等策略来保证数据的访问安全性;特别针对PCM中的系统关键数据,需采用强度更高的加密、上锁等算法,防止恶意的入侵修改所引起的系统安全问题,保障基于SCM的存储系统的数据安全性。

5、基于SCM的存储系统软件优化研究

由于SCM异于传统存储介质的特性,使得SCM存储技术不能良好地兼容当前存储系统的内存管理、文件系统等软件架构。基于SCM的存储系统,在软件层仍然需要改进,以进一步优化和提升存储系统的性能。

未来基于SCM的存储系统软件优化研究将可能包括:

①结合各存储介质的特性,基于SCM存储管理架构,研究冷热数据识别算法和数据热度分级管理等软件策略,降低存储系统中的读写操作开销,实现负载均衡;

②立足于SCM在存储系统中的应用场景(如统一内外存),针对SCM支持本地修改、位修改和可字节编址等特性,研究适应于SCM的文件系统,从而提升文件系统乃至存储系统的性能;

③研究基于SCM的内存分配机制及其优化策略,从操作系统层入手面向文件系统、虚拟内存等进行优化,降低页面分配等多种内存管理开销,充分地利用SCM的非易失性提高系统性能;

④研究设计新的软件调度算法,通过调度策略的设计和优化,达到系统性能的提升。

6、基于SCM的存储硬件原型系统的研究

由于真正的SCM芯片还没实现市场的量产,目前也就只有Intel的ColdStream问世,因此现有的研究还面临着几乎没有可用的基于SCM的真实硬件原型平台的尴尬局面,绝大多数研究均是在软件模拟器上进行的,当前比较成熟的模拟器有PCRAMsim、Simics、M5和DRAMsim以及近些年备受学者青睐的全系统模拟器GEM5。

由于SCM技术研究还处于起步阶段,其应用场景和价值尚未完全开发实现;而且目前市面上的主流存储器仍然不是SCM,适合于当前存储环境的大容量、高性能的SCM物理芯片稀贵,这些都导致当前系统级的研究几乎全都是基于软件模拟器进行的,从而无法获取最真实的实验数据以进行更加专业、深入的研究。

利用SCM物理芯片,实现真实的存储硬件原型系统,包括基于SCM的内存原型系统和外存原型系统,甚至于搭建基于SCM的专用硬件系统,比如基于SCM的DIMM条,基于SCM的全新硬件框架,基于SCM的高速通信通道等等,以解决目前相关研究没有原型平台的尴尬局面,通过在平台上获得最真实的数据,展开更有说服力、有数据依据的相关研究,将对当前内/外存储系统架构的研究工作起到积极作用。

7、基于SCM的事务性存储系统研究

事物存储技术作为存储领域最为关键的技术之一,几乎被应用于所有数据库系统与文件系统。随着闪存等介质的广泛应用,存储体系结构正面临着较大的变革,在这种背景下;因此在SCM技术的到来的背景下,研究基于SCM的事务性存储系统比较迫切。

针对目前SCM介质应用于事务处理技术,如下几个问题还需要进一步探索和研究:

①事务存储接口:如何提高实用性且支持不同特性事务的设备接口;

②数据可用性:如何高效迅速的进行故障恢复;

③系统可扩展性:分布式环境下,如何利用SCM提供高效的事务处理,多核环境下的分布式系统中如何提供更加优秀的日志等技术能力;

④数据可靠性:如何保证新介质中数据的可靠性持久化能力等等。

8、基于SCM的上层应用研究

在上述研究内容的背景下,显而易见可以看出SCM的多种优势都将会给未来的存储系统以及计算机其他技术领域带来变革,那么,面向SCM技术的内存数据库、面向SCM技术的实时分析应用、面向SCM技术的内存计算技术、面向SCM的大数据服务等等,都将可能会因为SCM的到来,有了新的机会和变革窗口。

这些领域的研究,最直接的,比如考虑将当前的存储介质全部换成SCM后,在性能得到收益的同时,应该如何应对新的问题,将是未来的研究重点。

9、结语

综上所述,面对新应用环境的需求,思考如何在存储系统领域的设计中充分利用SCM的优势,并通过新的机制和策略来克服它们的劣势,与现有存储系统融合并获得更加优秀的性能,从而最大限度地匹配以数据为中心的发展趋势和面向大数据背景的上层应用服务,将是未来的主要工作之一。

 

责任编辑:姜华 来源: 架构师技术联盟
相关推荐

2017-10-19 16:21:02

SCM存储技术

2009-11-18 09:39:06

Oracle介质恢复

2018-01-23 07:41:46

TOSCANFV网络

2020-07-31 10:01:10

新基建华为智慧医疗

2009-10-26 18:08:06

2017-07-19 11:04:40

大数据大数据应用方向

2009-03-02 09:15:13

OSGiJavaJ2EE

2017-09-30 08:39:15

2013-12-16 09:32:21

未来网络ICNSDN

2014-06-09 11:33:05

硅光子光通信技术

2013-01-19 09:45:31

App移动开发趋势

2009-03-30 09:42:28

OSGiJavaJCP

2009-10-26 16:13:48

远程接入网

2009-12-30 15:37:14

ADO处理

2022-02-17 16:34:33

戴尔

2017-11-13 06:34:59

2017-03-08 11:10:30

存储网络闪存

2023-08-31 17:18:00

人工智能

2013-11-29 09:31:30

移动支付移动安全

2018-11-02 09:16:05

数据存储磁带
点赞
收藏

51CTO技术栈公众号