在存储领域,容量大、速度快和价格低是用户的期望目标,但就现有的存储器而言,速度越快的存储器,容量越小,价格越高,容量大的存储器,虽然价格低,但是速度却达不到要求。
尤其是随着人工智能、机器学习、物联网等应用场景的出现,越来越需要用更快的速度处理更多的数据。不过,现有的存储系统乏力,存储领域急需一场技术革命。
图片源自Mainline
那么,存储界该如何推动这场技术革命?这一革命进展如何?雷锋网就此话题与大内存软件先行者MemVerge联合创始人兼CEO范承工进行了交流。
存储级内存是革命的基础
当传统的存储系统失效时,要么依靠现有的存储技术构建新的存储系统,要么先发展新的内存介质再建存储系统,按照后一种逻辑,存储级内存技术(SCM)应运而生。
顾名思义,存储级内存就是将速度快性能好的类似DRAM内存和容量大价格低的类似SSD存储器的优点结合起来,缩小存储和内存之间的差距,改变数据的存储与处理方式。与DRAM不同的是,SCM是非易失性内存,这就意味着在断电时,前者无法保留数据与程序代码,后者却可以。
范承工表示,过去十几年里不少硬件厂商都在研发SCM存储级内存技术,目前已有大约5种,且这些技术的发展和应用不尽相同。
“在目前已有的SCM技术中, MRAM容量相对较小,价钱较高,但是它的速度很快,在取代CPU更快更小更贵的内存SRAM上有更大的空间,不过它本身无法取代DRAM;RRAM或ReRAM等电阻式内存主要是在嵌入式系统内得以应用,目前还没有发展到能够直接插入服务器里当主内存用的产品形式。英特尔和美光合作开发的3D Xpoint技术也是SCM技术中的一种,且是第一个能够用作服务器主内存的商业化技术。”
这里所说的商业化,也就是一年之前英特尔基于3DXpoint介质推出的傲腾持久内存,其大容量和持久性,在取代传统的DRAM上有一定空间。不过,也有人指出,尽管SCM技术有很多优势,但是现有的操作系统中很多设计机制考虑内存特性,SCM并不能完全替代DRAM。范承工认为,单纯从硬件的角度来看,这一说法是成立的,持久性内存的速度会比DRAM慢4-5倍,其重复写的次数也远远少于DRAM,所以它并不能完全取代DRAM。
“依靠SCM取代DRAM,其实也是MemVerge大内存软件的发力点。”范承工告诉雷锋网。
释放SCM潜能,大内存软件诞生
软硬件结合是计算机发展的大趋势,对于存储系统而言亦是如此。基于新型内存技术做大内存软件,MemVerge是第一个“吃螃蟹的人”。
“我们认为未来十年存储技术将迎来一场革命,这场革命不仅仅是在硬件上,也会在应用层、软件设计乃至生态上发生系列转变。所以在三年前我们创建了MemVerge这家面向企业级软件的公司,只要是在特性和功能上能够当做主存用的存储硬件技术,我们就计划支持,傲腾持久内存恰好满足我们的要求。”范承工向雷锋网介绍到。
经过三年的发展,MemVerge在今年的9月24日正式发布了世界上第一款大内存软件,内存机器(Memory Machine Version1.0)。
MemVerge发布会上,范承工表示,Memory Machine主要做两件事:
作为虚拟内存层,将DRAM和PMEM(持久性内存)统一虚拟化,为内存提供软件定义的内存服务。
内存的ZeroIO Snapshot功能,减少硬件宕机后重启的时间。
据介绍,Memory Machine不需要修改软件和硬件,就能将DRAM和PMEM都应用起来,内存容量得以扩大。一般而言,傲腾持久内存能够支持一个CPU线路的3T容量,DRAM能够支持1.5T容量,而Memoey Machine能够使两者并存,这就意味着一个普通的2路服务器能够拥有9T的内存容量,是过去的3倍。
另外,傲腾内存价格比DRAM要低,这意味着DRAM与其结合能够降低内存的平均价格。“通过我们的软件,可以选择一个最合适的比例将软件定义的内存提供给应用,这这种情况下,内存成本可以降低30%到50%。”范承工说。
价格降低的情况下,原本DRAM的性能是否会受到影响?MemVerge官方给出了不同比例搭配的DRAM和PMEM在KVM虚拟化Hypervisor架构上的MySQL数据库性能测试数据对比。数据显示,128G PMEM搭配16GB DRAM的QPS达到49753,超过原本只有128GB DRAM 2175 QPS。
Snapshpt快照技术是某个数据集在特定时刻的镜像,是一种即时拷贝,大大缩短了备份大型数据集时的时间,因此这一技术是存储上常用的数据服务技术。但MemVerge是第一个在内存上实现多次Snapshot,且拥有copy-on-write功能的公司。
据悉,即使有1T以上的数据,ZeroIO Snapshot也能在1秒之内抓住CPU Cache中的全部状态。基于此,ZeroIO内存快照有四种数据服务:
时间旅行(Time Travel),应用能够随意回到过去的任意一个Snapshot,可以同时产生128个Snapshot。
自动保存(Auto Save),像在编辑Word时每隔一段时间应用都会自动保存。
简单克隆(Thin Clone),同一个应用可以“克隆”成多个平行运行,且各个应用互相独立。
应用迁移(APP Migration),应用能够迁移到各个数据中心运行,无论是裸机还是虚拟机。
对于128个数量级的快照是否会占据大量内存,范承工表示, “128个数量级的快照会占据一定的容量,具体容量需要根据应用的活跃度决定。如果快照数量多,改变也多,就需要产生新的内存页进行管理,需要用到多余的内存,但即使是这样,也会比128倍小很多,这是因为未改变的内存页在物理层面上是共享的。整体来说,内存资源是被节省了。”
面向应用场景,革命需要更多伙伴
有软件加持的SCM技术,能在哪些具体的应用场景发力呢?
“让我们下定决心集中力量做大内存系统的另一个重要原因,是我们已经找到三个对这一技术最感兴趣的应用场景,一是云服务提供者CSP(Cloud Services Provider),二是电影工作室在进行创作时的应用,三是金融应用领域,可以使最新的股市交易信息在2至3微秒内传递给用户,建立一个更加公平的股市交易平台。” 范承工介绍到。
平安银行是MemVerge的客户之一,拥有6000多万的信用卡用户和9000多万的零售客户。平安银行大数据平台技术总监沈百军表示,对于银行而言如果用户体量小,可以直接将所有用户的数据全部加载到内存中,提供快速的服务。面对一亿左右的用户,就需要新的技术支持。“我们引进大内存技术,全面实现ZeroIO,希望能让我们的服务全都是在内存里进行的,这样可以达到一个非常理想的工作效率。”
Banca Intesa Sanpaolo 是意大利市值最高的银行集团,它部署了英特尔持久内存和Memory Machine软件。Banca Intesa Sanpaolo 云和混合数据中心主管 Nicola Carotti 表示:“MemVerge Memory Machine的 ZeroIO 快照功能显著提高了新应用程序的性能,将恢复时间从数小时缩短到了数秒。”
不过,虽然大内存软件已有一些切实可行且效果不错的应用场景,但大内存软件既是存储革命在软件层面的第一个进展,也是MemVerge的第一个版本。范承工也表示,这一版本软件还有一些值得升级的地方,例如将手动调控比例升级为智能自动化、ZeroIO快照还可以有更多的数据服务,安全服务也是MemVerge未来会考虑的方向。
范承工认为,大内存软件才刚刚开始,这是一件值得MemVerge持续十几年时间投入来做的一件事,基于千亿美元的内存市场,需要更多的软件来更好地管理优化,才能充分发挥出内存的价值,那时候大内存软件将是一个百亿美元的市场。
“存储革命无法靠我们一家创业公司独立完成,还需要更多的合作伙伴共同建立一个良好的生态,才能完成这场革命。”范承工说。
文中图片源自MemVerge
相关文章: