今年4月,IBM宣布收购了一家私人持有的存储“重复数据删除”(de-duplication)技术公司Diligent Technologies。据传为2亿美元的收购金额,对极富收购经验的蓝色巨人而言依然是个小case,IBM在半年之内就将Diligent的重复数据删除技术与自身的固有优势整合在一起,推出了IBM System Storage TS7650G ProtecTIER重复数据删除网关。
Diligent的前身是EMC设在以色列的研发实验室,2002年独立出来,其共同创始人兼董事会主席Moshe Yanai同时也是以色列集群初创厂商XIV的执行主席,后者比Diligent早3个月被IBM以据传的3.5亿美元收购。
在被收购之前,Diligent累计融资近5000万美元。虽然也在去年发布了一款中端版本的ProtecTier软件,但Diligent耕耘的重点一直放在高端企业市场,并与Overland、HDS和Sun签订了ProtecTIER软件的分销协议。联想到更早被EMC收购的Avamar,不难发现,目前仍保持独立的重复数据删除技术供应商就只有Data Domain、ExaGrid和FalconStor(飞康)等屈指可数的几家了。
IBM系统与科技事业部大中华区存储产品线经理庞文峥介绍Diligent及其技术
当然,IBM既不可能视消灭独立的重复数据删除技术供应商为己任,更没有让HDS或Sun去光顾Data Domain等“幸存者”的想法。像Diligent这样规模的技术型公司,IBM最看重的肯定是产品和技术上的价值。
IBM系统与科技事业部大中华区产品部总经理侯淼和IBM系统与科技事业部大中华区存储产品线经理庞文峥都表示,IBM选择Diligent的主要原因是其在线的重复数据删除(in-line)技术非常具有创新性,可以满足中端客户和企业级客户对于数据中心虚拟磁带库(VTL)的需求。
IBM认为,与后处理(post processing)相比,在线处理(inline processing)方式从备份数据进入时就开始进行重复数据删除,能够缩短完成备份全过程所需的时间,可以更好地满足客户的SLA(服务级别协议)要求
Diligent有两大产品系列,分别是虚拟磁带库软件产品ProtecTIER和重复数据删除软件产品HyperFactor,核心都是其HyperFactor算法。据IBM亚太区系统存储部销售总经理Justin Hildebrandt介绍,与另外两种重复数据删除算法——散列法和内容识别——相比,HyperFactor是一种无需查看数据内容即可进行重复数据删除的独特算法。
我们知道,内容识别假设需要进行重复数据删除的文件是那些具有相同属性(如名称)的对象,目前主要是SEPATON在用。多数厂商用的还是散列法(哈希算法),算法本身很复杂,通过计算出来的8K索引值判断,直接比较8K索引值是否相同,是的话就认为原始数据也是相同的,便不再存储。但是哈希算法存在所谓的哈希冲突,就是有可能两个数据完全不同,算出来的哈希值却一模一样(不唯一),从而导致错误地删除并不重复的数据,难以100%的保证数据完整性。
ProtecTIER处理架构和工作流程图
作为对比,庞文铮较为详细地讲述了HyperFactor的工作流程:真正的备份数据进入后,会很快地计算索引,接着在内存里做索引比较。索引相同的时候,会重复进行二进制比较,从而确保一致性;索引不同的时候,则肯定是因为数据有不同点,就把这不同点写到磁盘上。当有新的备份数据读入的时候,会在内存里先把特征值进行定位,然后进行比较,因为内存中的处理是非常快的,通过内存进行比较以后,一旦有相似的特征值,再从磁盘上把相关的数据读出来,真正进行一次二进制比较,确保数据不会有误删除的现象。通过这种计算差异以后,再把新的数据,以2:1的LZH标准压缩格式存储到磁盘上。这样一来,既可以获得很高的速度和最大可达25:1的压缩比,又能够保证数据的完整性,不会发生误删除的现象。
IBM认为,ProtecTIER可以突破重复数据删除比率和性能/扩展能力的分界线,而不需要在两者之间寻求平衡
HyperFactor算法的最大特色是索引时可以驻留在缓存中,因为索引非常小,这也是它的性能可以达到很高的一个前提。数据与索引的大小之比高达25万比1,也就是说,1PB数据的索引只有4GB,可以完全放在内存里,查找起来非常迅速,从而实现很高的处理性能。相比之下,把索引存储在磁盘上的常规做法,会由于反复读取磁盘而导致性能的下降。
IBM认为,由于HyperFactor算法的索引操作都在高速的RAM中进行,所以在性能上比需要大量访问磁盘的散列法和内容识别算法更具优势
Diligent的ProtecTIER作为一种软件产品,原则上并不依赖于特定的硬件平台,但是在线重复数据删除对CPU运算能力的高要求,和完全在内存里处理索引的特点,使得其非常适合在相对廉价而又颇具运算能力的工业标准服务器中运行。与EMC等专攻存储的竞争对手相比,同时具备完善的服务器产品线是IBM的一大优势,因此,IBM收购Diligent之后,轻车熟路地将ProtecTIER与其x系列服务器结合在了一起——从这个角度来看,被IBM抢去Diligent可以说是Sun的一大损失……
TS7650G的硬件平台就是4U机架规格的IBM x3850/x3950服务器,采用4颗Intel四核至强X7350处理器,32GB DDR2内存,以及千兆以太网卡和4Gb/s FC扩展卡。TS7650G本身相当于虚拟磁带库的引擎,能够通过光纤接到FC交换机上,后端则可以连接各种磁盘阵列,包括IBM高端的DS8000系列和中端的DS4000系列,还有其他的FC存储系统。当有新的备份任务到达时,首先会把数据读到服务器的缓存里,把索引驻留在内存中,确认非重复的数据才被写入到后端连接的磁盘阵列上。目前TS7650G支持两节点负载均衡的配置,单一节点吞吐率为450MB/s,系统最高性能达900MB/s。
IBM System Storage TS7650G ProtecTIER重复数据删除网关以IBM x3850/x3950服务器为硬件平台
前面已经说过,TS7650G是一个重复数据删除网关,自身并不存储最终的数据。从ProtecTIER软件与TS7650G硬件平台的关系来看,感觉颇似IBM的存储虚拟化产品SVC(SAN卷控制器):SVC的核心也是一套可以运行在通用硬件平台上的(存储虚拟化)软件,但同样选择了绑定IBM x系列服务器的方式,利用后者较强的运算能力和较大的内存空间来保证性能;同样是后端连接各种磁盘阵列(存储虚拟化的目标),自身也连接到FC交换机上(对外提供服务)……不同之处在于SVC是IBM自家树上结出的果子,ProtecTIER则是从外面“采摘”而来,但也恰恰反映了将需要强大处理能力的软件与本身优势的服务器硬件平台结合起来是蓝色巨人的一贯方针——无论软件来自哪里,一概软硬结合,达成优势互补的协同效应。
对笔者的上述观点,庞文铮表示基本认同,并证实ProtecTIER重复数据删除网关也计划未来像SVC一样支持更多的节点,以进一步提升性能和可用性。