NetApp 异构数据保护部首席产品架构师
作为 Alacritus 最初的创始人之一,Craig Johnston 在 2005 年公司被收购后就加入了 Network Appliance。Craig 在数据保护领域有长达 15 年之久的工作经验,曾受雇于备份软件领域的多家早期创新公司,其中包括 Delta Microsystems(开发 BudTool 的公司)、PDC、IntelliGuard 和 Legato。
虚拟磁带库 (VTL) 增强了现有的备份过程,同时没有带来破坏性的变化 ― 只是将 VTL 系统集成到基于磁带的备份环境中,这带来了许多好处,不仅简化了管理,缩短了备份时间,还确保了恢复过程能够迅速可靠地完成,同时并没有改变现有的流程、程序或体系结构。
NetApp 在 2006 年 10 月宣布已经扩展了最初 VTL 产品的功能,现在的产品不仅包括硬件压缩功能,还提高了性能和容量,同时降低了门槛。为了解更多信息,Tech OnTap 专门采访了首席产品架构师 Craig Johnston。
问:硬件压缩是 NetApp 在最近的 VTL 产品发布中提到的主要内容。为什么硬件压缩具有优势?
Craig:首先,一定要明白如今的公司被迫在效率与性能之间做出选择。压缩之所以能产生巨大的经济效益,是因为它允许在相同数量的磁盘空间上更多的数据 ― 通常有两倍之多。但是,请记住,人们最初实现 VTL 技术的原因是为了提高备份速度和尽可能地缩短备份时间。可是那些会影响性能的压缩方法使上述目标化为泡影。
每一种其他主流 VTL 系统都使用了软件压缩技术,这大大增加了处理器的负担,因而也降低了 VTL 的整体运行速度。有些时候,在启用软件压缩的情况下 VTL 吞吐量会降低一半。最糟糕的情况是,如果对不容易压缩的数据启用软件压缩,那么,当启用软件压缩时计算系统的吞吐量会下降 85% 以上。
NearStore― VTL 通过将压缩内置到硬件中,可以让您花同样的钱可得到双倍的可用容量,同时不以降低性能作为代价。我们的 VTL 系统可实现线速压缩,每秒的吞吐量可达 850MB 以上。事实上,因为磁盘的写入操作减少了,所以启用硬件压缩时吞吐量实际会上升。
问:NetApp 是第一个提供硬件压缩技术的主要设备供应商。在 NearStore VTL 平台上实现这种压缩技术还涉及其他哪些方面?
Craig:压缩硬件技术是使用 PCI-Express 卡实现的。每一个卡上都有四个单独的压缩芯片以及一个负责协调数据流和平衡负载的 FPGA。接收到要压缩的数据之后,会先现将其缓冲在一个环路的“移动器”缓冲区中。当累积了足够的数据时,就会触发压缩循环,使数据流经压缩板并回到系统内存中的一个单独的移动器缓冲区。
压缩后的数据一直累积在内存中,直到有足够的数据后才在磁盘上执行全条带写操作。压缩驱动程序会与 VTL 和 RAID 实现密切协作,这样我们便可以非常有效地写入数据,从而让磁盘子系统获得最大的 I/O 吞吐量。
数据的解压缩过程相对要复杂一些。由于用户可能先读某一处的数据而不是读磁带开始处的数据,因此我们在磁带上保留了一些跟踪点,大约每 10MB 一个,这样我们便可以在这些跟踪点处开始解压缩。有关硬件压缩技术,我们还需要了解更多的信息。Jasbir (Jazz) Manotra 是负责编写压缩驱动程序的工程师,他发现我们需要在压缩后的数据中插入一个小的数据头才能够跟踪每一个压缩块。
问:相对于其他公司而言,NetApp 是较晚进入 VTL 领域的一家公司,如果说硬件压缩为 VTL 带来了如此明显的好处,那么为什么是 NetApp 成为了第一家引入这种技术的主要存储供应商呢?
Craig:我认为这很自然,要看到硬件压缩是完整客户解决方案的一个必不可少的部分。在不久的将来,您很可能会看到大多数其他主要 VTL 供应商都遵循这种模式。归结而言,它实际上取决于创新速度以及实现新功能的速度。NetApp 拥有一个专门研究 VTL 的业务部门,完全能控制这种技术的发展。其他一些 VTL 供应商依赖于 OEM 关系,但我们不依赖这种关系,这使我们能吸收客户反馈并迅速开发出新功能。
经验是另外一个主要因素。我们拥有一只专门研究 VTL 的工程师团队,他们在物理磁带机领域有着非常丰富的经验。
问:前面提到借助硬件压缩提高了吞吐量,但为了增强新平台的性能,还采取了别的什么措施?
Craig:NearStore VTL 建立在 NetApp 硬件平台的基础之上,这意味着它已在全世界成千上万个存储部署方案中经过了测试和验证。从硬件的角度看,新平台在以前的型号的基础上进行了许多改进。这包括处理器功能更强大,内存总线速度更快,采用由一流的芯片集驱动的 PCI-Express 代替 PCI-X,以及用 4Gb 光纤通道代替 2Gb 光纤通道。NetApp 平台开发团队开发了一个全新的平台,我们特别将它用于 VTL700。
从软件的角度看,我们致力于采用优秀的实践方案来确保将硬件工程师提供给我们的建议贯彻到产品中。当不采用硬件压缩时,数据通过 DMA 进入系统内存中的缓冲区,最终又通过 DMA 从该缓冲区中出来,从而避免了产生不必要的副本。很明显,采用硬件压缩时,数据必须流经压缩板,但也最大程度地避免了耗费时间的内存操作。
数据路径已针对大量的顺序 I/O 进行了优化。我们总是执行全条带写操作,因此每一条带只需要计算一次奇偶性。NetApp 正在申请一项专利,就像对 VTL 中的 RAID 所做的那样。
最后的结果是,启用压缩时 NearStore VTL 的性能是竞争对手产品的三倍,而压缩后的吞吐量性能与市场上不提供压缩的其他 VTL 系统相当。
问:前面提到借助硬件压缩提高了吞吐量,但为了增强新平台的性能,还采取了别的什么措施?
Craig:NearStore VTL 建立在 NetApp 硬件平台的基础之上,这意味着它已在全世界成千上万个存储部署方案中经过了测试和验证。从硬件的角度看,新平台在以前的型号的基础上进行了许多改进。这包括处理器功能更强大,内存总线速度更快,采用由一流的芯片集驱动的 PCI-Express 代替 PCI-X,以及用 4Gb 光纤通道代替 2Gb 光纤通道。NetApp 平台开发团队开发了一个全新的平台,我们特别将它用于 VTL700。
从软件的角度看,我们致力于采用优秀的实践方案来确保将硬件工程师提供给我们的建议贯彻到产品中。当不采用硬件压缩时,数据通过 DMA 进入系统内存中的缓冲区,最终又通过 DMA 从该缓冲区中出来,从而避免了产生不必要的副本。很明显,采用硬件压缩时,数据必须流经压缩板,但也最大程度地避免了耗费时间的内存操作。
数据路径已针对大量的顺序 I/O 进行了优化。我们总是执行全条带写操作,因此每一条带只需要计算一次奇偶性。NetApp 正在申请一项专利,就像对 VTL 中的 RAID 所做的那样。
最后的结果是,启用压缩时 NearStore VTL 的性能是竞争对手产品的三倍,而压缩后的吞吐量性能与市场上不提供压缩的其他 VTL 系统相当。
问:VTL 产品发布中的另一部分涉及了新的 VTL300 平台。为什么 NetApp 决定引入入门级平台?
Craig:客户懂得在什么情况下适合使用 VTL300 这一点非常关键。它是一种入门级的企业平台。虽然 VTL300 的容量和性能都有限,但是它包括了 VTL 产品线中其他型号的所有企业功能。
对于有兴趣了解哪一个 VTL 系统最适合他们的企业客户而言,VTL300 的价格是非常具有吸引力的,它是一种很好的入门级产品。而且这一平台还提供了 NetApp 的商标投资保护。也就是当您的需求改变时,可就地将 VTL300 升级为 VTL700。我认为其他任何 VTL 供应商都不能提供这种升级功能。
问:新平台是否能提供同样的自我调整功能、磁带智能大小调整功能、影子磁带以及其他功能?
Craig:完全可以。新平台拥有最初产品的所有功能,包括自我调整功能、磁带智能大小调整功能以及影子磁带等。
例如,NearStore VTL 的自我调整功能可用来动态平衡工作负载。在其他 VTL 中,虚拟磁带位于磁盘上的固定位置,负载平衡是静态的。在某些情况下,可能会有很多的备份流传到一个磁盘上,而只有很少的备份流传到其他磁盘。这样会逐渐产生热点磁盘,为了优化性能需要手动进行调整。使用 NearStore VTL 时,虚拟磁带并不位于固定的位置。备份流动态地平均分布在多个磁盘 LUN 中,所以不需要手动调整即可达到最佳性能。关于这个功能我们也正在申请专利。
其他 VTL 还无法使用物理磁带机压缩技术。它们使用固定容量的虚拟磁带,当虚拟磁带写出到物理磁带后,会有部分物理磁带未写满。NearStore VTL 的磁带智能大小调整功能会对备份数据进行采样,然后会根据数据流的可压缩性来相应地调整每个虚拟磁带的大小。这样,当写出虚拟磁带时物理磁带可以得到充分的利用。
启用硬件压缩时,磁带智能大小调整功能的工作方式是完全相同的。当写入物理磁带时,我们先对磁盘上的数据解压缩,然后将数据发送到磁带库,让磁带机自己执行压缩。这可能看似多余、不必要的工作,但通过这种方式最后可得到本机磁带格式的标准磁带。在发生灾难性事件时,不是必须有 VTL 才能读取磁带。
我们提供的另一功能是,允许用户采用与备份应用程序兼容的方式,将 VTL 磁盘上的磁带副本另存为影子磁带,这样即使是在已创建的对应物理磁带不在现场时也可以进行恢复。大约 90% 的恢复工作都发生在前两周内,所以当您从 VTL 写入物理磁带时,我们会保留虚拟磁带,只根据需要回收空间。我们会首先回收最近很少使用的影子虚拟磁带。因此,如果您需要磁带中的数据,仍有可能从 VTL 获得,并且可达到很高的 VTL 恢复速度,而不需要使用物理磁带,再者说,物理磁带可能已不在现场。
问:您能给我们透露一下 VTL 工程师团队目前正在做什么吗?
Craig:我们正在开发许多新功能。在硬件方面,重点是提高可用磁盘容量,并增加可供连接的 I/O 端口总数。我们还增加了 ACSLS 支持,以便 VTL 可直接与使用该的大型 Sun™ 和 STK 磁带库进行通信。
最令人兴奋、也最具创新性的开发涉及新的剔除冗余功能,此功能计划在 2007 年发布。剔除冗余功能可以增加在 VTL 上存储的数据量,增加量甚至比现在提供的存储量还要大。在实现此功能的同时,还将保持数据中心所需的企业级备份性能。现有 VTL 剔除冗余方法中存在的问题是速度太慢。我们正在研究一种算法,这种算法已针对大量的顺序 I/O 进行了优化。理想情况下,这意味着执行剔除冗余写入的速度可以与执行非剔除冗余写入的速度一样快。
问题:有没有结论性的说明?
Craig:这只是我的观点 ― 坦率地说我承认自己有些偏见 ― NetApp VTL 解决方案肯定是当今市场上最具有创新性的产品。每个供应商都提供它自己的类型的 VTL,特性和功能各异,但 NetApp 是第一家持续在这一领域进行投资的供应商,它所提供的功能对 VTL 的经济效益有重要的影响,同时不会降低数据中心 VTL 的基本性能价值。我们 VTL 团队的所有成员都在期待着令人兴奋的 2007 年的来临。
NetApp NearStore VTL 产品比较(来源:NetApp VTL 产品概述)