日前,EMC发布了传说已久的“闪电计划”,并推出了VFCache,其旨在通过利用闪存的快速读写优势来加速数据流通速度,加强服务器与外部存储系统之间的联系。面对EMC推出的新产品VFCache,大家可能还有很多的疑问,如VFcache与传统的利用SSD做缓存有何不同?与Fusion-io公司的解决方案有何区别?以及EMC透露出的紧随“闪电计划”其后的“雷电计划”又将怎样?
为解决上述问题,EMC副总裁兼全球市场首席技术官Chuck Hollis一连发布了三篇博客,详细分析了VFCache产品诞生的背景和给企业带来的巨大作用,以及今后的“雷电计划”的目的。下面我们就来看看 Chuck Hollis是如何理解EMC的“闪电计划”的。(注:本文有删改)
VFCache:最大限度利用SSD优势
Chuck Hollis认为,全球数据量的海量增长使得存储系统的性能越来越难满足企业对其的需求。CPU性能与存储性能问存在着永远的差距,这令客户们颇为焦虑,即便是买了更快的服务器,如果读写数据那里依然是瓶劲,还是得不到更快的性能。图为:CPU性能十年间快了100倍,而硬盘处理能力依然表现平平。VFCache发布就是为了缩小这一巨大的鸿沟。
▲
磁盘处理能力越来越难满足CPU对其的速度要求,企业迫切需求一种新的介质来改变这一现状,SSD的快速读取优势使得其在替代名单中大放异彩。早在 2006年,EMC就对企业级闪存存储表现出极大兴趣。2008年初,EMC发布业界首款企业级闪存技术。2010年,EMC VNX更进一步,引入FAST Cache。
▲
据EMC公司发布的数据显示,截止到目前,EMC共售出了24PB的闪存。平均每售出1TB的闪存,将有54TB的存储容量提高性能。因此,目前为总共有1300PB(1.3EB)的存储系统其性能得到提高。
利用SSD提升数据流通速度的传统做法是将SSD作为一个快速读取层,将频繁读取的数据缓存到这个读取曾中。这种做法解决了一些企业目前面临的难 题,但并不能从根本上解决CPU的等待时间。于是,另一种理念开始出现,即减少CPU等待时间的最根本的做法是让存储层无限贴近CPU,避免数据经过多层 协议转换进行传输带来的CPU等待时间。由此产生的即为PCIe SSD。
▲
而目前EMC公司发布的VFCache,就是将闪存技术的优势进一步扩大到服务器。如果说以前通过FAST技术,能够将数据存取速度提高300倍,将它扩大到服务器上,就能将数据存取速度提高4000倍。
可能会有人质疑,上述所说的方式利用PCIe SSD就可以做到,为什么EMC会专门发布这样一个产品,并且非得从EMC购买了呢?直接买PCIe SSD不就可以了么?
对此,Chuck Hollis给出了详细的解释,他说有很多用户都采取了上述的做法,结果却遇到了始料不及的问题。这是因为:首先我们要处理的是高价值的数据,无论这些数据在本地还是在异地,我们都要对它进行保护、备份和复制。
其次则是,最关键的是在恰当的位置、恰当的时间存储恰当的数据,这一过程要自动化,不能依靠手工处理。我们过去是在阵列中用FAST全自动存储分层实现,现在要在服务器和阵列之间做同样的事情。
最后,Chuck Hollis说,闪存很昂贵,是稀有资源,因此需要配合重复数据消除、资源池等技术,物尽其用。当我们跨越沟壑去到多种企业应用时,粗放地把技术摆在那里让人们随便去用是不行的。
EMC首席技术官详解VFCache
总的来说,VFCache是与其他存储环境相集成的位于服务器端的闪存存储器。Chuck Hollis认为与其他的利用SSD的技术相比,VFCache具有很多优势,其主要有以下几点:首先,VFCache的速度非常快,远远超过了你所能想象的传统存储阵列或现有服务器端部署的SSD的速度。
▲
其次,VFCache非常智能。其能通过EMC软件和其他技术对企业的已有设备进行整合,包括存储阵列、操作系统、虚拟化技术以及管理软件等。
并且,VFCache所具备的高可靠性能够很好地和EMC其他数据保护方案进行整合。如高可用、备份、复制以及灾难复原等等。也许这些都还不足以说明VFCache的优势所在,诸位读者可通过下面这个图来更详细地了解VFCache:
▲
在低端的是我们所熟悉的存储阵列端的闪存技术,相比于传统的磁盘,其能够更经济地提供高IOPS,但在本质上原理服务器和CPU,并不能从本质上解决CPU的等待时间。
而在顶部则是我们所熟悉的服务器端的闪存技术,确实非常快,但却面临着一个很重要的问题,那就是对于企业最具价值的资产——数据——却没有很好的保护机制。
而VFCache则巧妙地结合了这两种技术的优点,并有机地整合成一个单一的综合解决方案,弥补了存储端和服务器端现有闪存技术的不足。其最大的优 点在于,用户不必花时间和精力去考虑到底该将闪存技术部署在服务器端或存储端,而使用EMC的VFCache则可迅速应用于企业的不同环境,并能提供令其 满意的性能、成本及可用性等。
关于VFCache的性能,Chuck Hollis认为并不能仅仅用“快”来衡量性能的优劣,因为在实际环境中,诸如SAP、Exchange、Oracle、SQL server以及生产文件系统等相似的应用程序会产生读写混合的工作负载。而64K测试所产生的高水平成绩对于用户来说,并没有太大的实际意义。
▲
虽然上图中缺乏一些细节,但却是VFCache多次重复测试所产生的数据。无论你目前是基于什么存储阵列得出的存储性能测试曲线,只要曲线向右侧下 移,都是一件非常令人高兴的事情。平均I/O延迟的大大降低(对我们而言,并不以为着是大幅。此为原文),能够减少队列,并提供高可用,基本上能改善相应 的一系列的存储性能。
如何将效果转化成具体的性能提升将会随着主机因素的改变而略有差异,但最近的白皮书显示,在立基于Oracle 11g、思科UCS和EMC VMAXe存储系统之上运行类似于TPC-C环境的TPM(每分钟交易)有80% 的性能提升。对于需要更深入地了解细节的用户可参考下图:
▲
在最底层的硬件/驱动程序级别,我们可以明显看到IOPS显著提高,并且延迟降低,以及——最重要的是——利用VFCache可大大减少CPU开销。当然这可能是最极端的应用测试性能,在实际应用中会稍有下降。但对更深层次的架构讨论和软硬件集成后,Chuck Hollis相信VFCache的性能优势将大大超越未来的可预见的竞争产品。“时间可以证明一切!” Chuck Hollis如是说。
VFCache产品架构
如果你想要更深入地了解VFCache,如你所愿,下面我们将要详细地谈谈这个问题。
▲
在上层,VFCache为下一层级的块级I/O子系统采用了一个轻量级的I/O筛选器应用程序,其能对块级I/O栈进行筛选,这其中包括供应商提供 的 MPIO,EMC的PowerPath等等。轻量筛选应用程序通过检查I/O传输,通过缓存算法实现写等等。但值得注意的是,你仍希望将普通的服务器闪存 卡部署在服务器内部,而不是采用VFCache的优势所在,这也是支持的。这可以大大加快例如临时文件等非持久性数据的传输速度。
在VMware公司的vSphere架构下可能有所不同。
▲
在vSphere环境下,EMC只对上层的来宾操作系统的I/O块进行I/O筛选应用程序,这就是说如果需要,你可以利用VFCache对每个来宾 或者每个逻辑存储基础进行筛选。更重要的是,VFCache还提供一个名为vCenter的灵活的逆变器以监视服务器端和存储端的缓存。
VFCache的最佳应用环境
显然,大多数人对典型的企业应用工作负载更加感兴趣,下图将给大家提供一个很好的参考:
▲
横轴大多是以连续写为主。虽然大多数企业应用程序都有一个不能被忽略的写组件,其通常读取已写入的数据,并取决于使用模式而略有差异。这其中,电子邮件就是一个很好的例子。竖轴为“参考位置”,与横轴有明显不同。LOR在一定程度上(有时也称之为偏差)向上移动。
红色部分表示EMC Isilon横向扩展NAS集群,大数据集、高读取带宽、HDFS等;橙色部分则为大规模并发写:高速备份、数据复制、实时图像采集和摄像。EMC并没有某个单一的产品去迎合这些应用,我们根据不同的应用环境采用不同的方法。
蓝色部分则表示“临时”数据,具有短、突发写入以及(通常)非持久性等特点,VFCache的分段式缓存在这方面具有较大的实践意义。而最后的绿色部分则为我们所熟悉的企业应用程序。
VFCache的未来规划
虽然在此以及讨论了VFCache的很多细节,Chuck Hollis预计在今年年底之前将发布更多的功能,其包括数据压缩以及重复数据删除,尤其是“热”数据方面的重复数据删除,因为对于闪存来说,目前仍旧是非常昂贵,而如何最大限度利用闪存以降低成本,在这方面将有很大的空间可用。
并且,围绕存储阵列的数据优先级和服务器端的数据优先级,结合基于阵列的磁盘/闪存/缓存的以往经验,还有很有的预测和分析,EMC期望将闪存发挥 到更广阔的领域。而服务器端的缓存一致性也很重要,因为其将涉及到交易数据库,而这通常牵扯到多个松散耦合的服务器。并且,EMC还计划对VFCache 进行改善,以尽可能透明底适应各种不同的IT角色,如存储管理员、VMware管理员、应用管理员、融合基础设施管理员以及IT通才等等。
从“闪电”到“雷电”
我们都知道“雷电计划”紧随“闪电计划”之后。所以“闪电计划”宣布之后,紧随其后的便是“雷电计划”。先让我们预览一下这一项有趣的技术。
化繁为简
VFCache就是让基于服务器的闪存更具可用性,更有效,性能更强,这里要很多要考虑的地方。但是它具体是什么又会怎样发展呢?这里我们先假设一种情境。客户需要更多性能,如重要的Oracle应用,决定用VFCache来大幅度改善性能而不用引入Oracle Exa。
为其他应用购买更多VFCache。从某种角度而言,客户回想:“或许我应该将所有基于服务器的闪存视为所有服务器的共享资源。”这是EMC Symmetrix 1995年出现的情况:人们当时意识到企业存储应该统一管理,共享及合并的资源vs. 与专属服务器绑定。我们通过端到端的SCSI回输,然后(!),不过没有太大不同。
注重性能的存储技术是少数且相对较贵的资源。而且你会希望在所有潜在用户那里优化其使用性能。历史会重演吗?个人认为历史没有理由不会重演。简而言 之,雷电计划是一个纯闪存数列,目的是集群使用服务器范畴的网络技术。从某种意义上来说,它就像是一个SAN,只是使用了不同的技术。
从硬件方面看,并没有太多令人惊讶的地方。熟悉的智能存储模块组件可以快速组合成可自由调整大小的架构,简直和Isilon等存储商如出一辙。
在单一模块中支持太字节的能力当然更多是通过多模块聚合成一个透明的池来实现。EMC已经有有一个专门对存储协议进行RDMA优化的团队,无疑将有很多操作也适用于此。它将是另一个EMC存储平台。
但是它可以和更传统的FAST数列以及新的VFCache等进行互操作。从EMC的角度来看,这只是另一个存储平台。我们可以获取数列中的庞大的存 储生态系统,不久后就可以在新平台上对其进行使用。“雷电计划”是一个共享的存储数列。我们知道要如何处理存储数列。确实,我们对于完全以“雷电计划”为 基础的VCE Vblock表示惊讶。
ECM的创新?
反对者认为EMC守旧古板。但这肯定不能代表EMC的全部。“闪电计划”和“雷电计划”已经出来。也希望竞争对手能迎头赶上。
EMC意识到这个闪存技术远不止是让现有数列速度更快而已。它为存储开创了新的思考方式。
而且EMC也意识到自己的产品团队主要侧重于目前的产品和客户。为了尽早达成目标,EMC需要更明了的蓝图,不过要仰仗EMC的广阔的资源。
结果便是EMC成立了闪存部门,该部门正式成立的日期是2011年4月1日。该团队由熟悉EMC新角色的老面孔组成,还包括一些业内经验丰富的新面孔。
尽管已有“闪电计划”和“雷电计划”这样的创新,但EMC仍将继续推出新产品。