Permabit与Isilon:唇枪舌战大数据

最近,Permabit与Isilon展开了一场论战,焦点指向大数据。Permabit强调其Albireo重复数据删除技术可用于横向扩展文件数据存储,且在不影响性能的情况下,能将存储成本减少十倍。

我们曾问过Isilon首席技术官Rob Peglar:“横向扩展文件系统会受益于重复数据删除文件吗——假定那不会降低性能?”

他表示重复数据删除影响存储性能和成本,对大数据不利,不应该使用。以下便是Rob Pegla和Permabit两方的“辩论”观点:

Rob Peglar:答案是否定的。首先,这个假定就不正确,任何数据精简技术,不管是数据压缩、重复数据删除还是incrementalisation,都会对性能(时间)有所消耗。此外,重复数据删除还对空间有消耗;这就是元数据和数据之间的折衷。

在大规模的情况下,重复数据删除元数据将变得意义重大。例如,拥有每4KB数据(常见粒度)的哈希表(CRC)对于一个小规模的数据存储库就意味着4万亿条元数据,一个4PB的小型数据仓库。

Permabit:Rob,我们诚挚的反对你的看法,相信行业内的其他厂商同样如此,你所说的情况可能对于传统(备份)重复数据删除解决方案是正确的,但Permabit Albireo却不一样。

重复数据删除的元数据是随着被储存的唯一数据的增长而增长,所以在一个数PB级的系统中,你需要磁盘来存放重复数据删除元数据。这的确是事实,但和像Albireo这样的系统没有相关性,开销占用比例为4K数据块占用约大于1%多的磁盘空间。因此,如果你减少5到10倍的空间,获益是相当巨大的。

Rob Peglar:如果每个哈希结构仅为64位或8个字节,非常小,这就意味着32TB的哈希元数据任何时候在所有节点之间都是完全一致的。

Permabit:相比这个例子,Albireo的效率要高出很多个数量级。Albireo只需要每个索引数据RAM的0.1个字节。因此,你举例的4PB数据,Albireo只需要100GB的哈希元数据,而不是32TB。

Rob Peglar:一方面,不仅需要将32TB数据储存在稳定且受保护的存储中,还需要保证该存储速度足够快,几乎需要赶上CPU的速度才能接受这些数据。每个节点都用32TB的RAM保存哈希列表,这是成本所不允许的。

Permabit:正如前面所说的那样,这只是一个旧的数学方法,我们将哈希进程保存在RAM,中,它以处理器的速度运行,实现扩增所需的性能。

Rob Peglar:再者,即使你拥有32TB的RAM,这也有意味着每个节点的CPU必须为每一次和每一个写访问至文件读取16TB的元数据(这是最糟的情况),无论它容量多么小——执行重复数据删除哈希校验——单独的搜索都是非常费时间的。

Permabit:因为我们在索引技术方面有着根本的优势,所以哈希校验通常需要不到10微秒的时间,而我们的专利Delta Index技术真正的提高了速度,使进程更加效率,就像系统存储更多的签名一样。

Albireo Grid具有GX技术,允许通过节点间扩展。它由多个Albireo客户端组成,内嵌于每家OEM厂商的存储软件,通过网络连接到多个Albireo Grid服务器。

在Albireo Grid部署方案中,每个Albireo客户端执行其自有容量级的细分和哈希,再将哈希列表通过Albireo Grid服务器分发,并使网格负载平衡。这是Albireo能够提供的另一种性能和效率功能。

当处理哈希列表的时候,服务器会向客户端发回重复数据删除通知并存储哈希密钥——如果它是唯一的话。

Rob Peglar:基本问题是,数据增长速度快过CPU高效处理元数据性能的提高速度。这就是要扩增的原因所在,重复数据删除并不是最理想的技术。

Permabit:这种说法用在Albireo身上并不正确。还是像前面所说的那样,Albireo索引是高效率的,能使哈希查找成为处理器上可忽略的负载。

Albireo具有行业内领先的且为专利的索引、哈希和内存管理功能,能够克服前面提到的传统重复数据删除所存在的限制。这些功能也使得Albireo能够不受限制的横向扩展,并以行业内破纪录的速度执行重复数据删除,不仅可以在现如今的多核处理器环境中实现,还能够促使厂商们最终部署重复数据删除而无需压缩。

Rob Peglar:它可以节约一些“终端”空间,但正如前面所讨论的那样需要将“大数据”考虑其中。这些数据通常高度唯一,且极少能够被重复数据删除。例如,网页点击量和来自终端用户的交易。每个终端用户都是唯一的(在定义上),且必须能够被分析软件所识别。每一次点击都在不同的时间点进行,一直变化,一直产生增量。

因此,持续接受的新数据流在用户那里很少有冗余。所以,对于“大数据”,重复数据删除通常不是一个好的折衷方案——即使CPU达到了无限快的速度,你也不能节约很多磁盘空间。相比较而言,传统的VM或VDI,其OS图像是不变模式且大部分是只读的;在这种情况下,重复数据删除是不错的折衷方案。但那还不是行业内目前试图解决的问题。亟待解决的问题是接收、分析和长期存储以及大容量(不断增长)唯一且常变数据的保护。

Permabit:行业真正的挑战是要解决如何高效存储大量数据,这就更进一步的结合了大数据。一家典型的企业,即使它进行大数据业务,仍然有过半的数据是来源于企业应用。其中包含诸如用户目录、Office文档,电子邮件和数据库等数据。正如你提到的,虚拟化将继续在企业级领域获得更多市场份额。而这些数据都具有非常高的重复数据删除率。

如果你是一家需要处理PB级存储的企业,你拥有“正确的”重复数据删除技术(既不影响性能同时能够扩展),你怎么会承担不起一项可以帮你节约10倍甚至更多存储成本的技术?

小结

Rob Peglar在回顾这些观点时表示:“虽然我很高兴看到哈希的改善,但最基本的事实仍然是:重复数据删除可能会在某些方案(比如虚拟机图像)中节约一些空间,但‘大数据’通常高度唯一且极少被重复数据删除。”

“例如,网页点击量和终端用户的通信,数以亿计的人们都拥有移动手机,每天千分之一的人进行核磁共振扫描,数百万分之一的人在那天申请Facebook账户或进行信用卡交易。每个终端用户都是唯一的(在定义上),都必须能够被分析软件所识别。每次点击都在不同的时间点进行、一直变化、一直产生增量。”

如果这些点击被分成64KB的数据块用于重复数据删除分析,几乎就没有唯一。因为大数据的时间敏感属性——它不仅仅是内容,也是内容生成的时间,这些数据不同于你提到的数据,比如主目录、Office生成的文档和结构化数据。我现在讨论的是非结构化、高度唯一的大数据,这类数据是由各种各样的人在每时每刻所生成的。

“因此,对于‘大数据’,重复数据删除不是一个好的折衷方案——即使CPU的速度无限快,你也不能节约大量的磁盘空间。相比较而言,传统VM或者VDI,其OS图像是不可变的且大部分都为只读,对于它们,重复数据删除是一个不错的折衷方案。”

“但这不是行业内目前试图解决的问题,亟需解决的问题是接收、分析和长期存储以及大容量唯一且不断变化数据的保护。

“再者,尽管如此,我非常高兴看到哈希技术的改善;创新是好的。”

最后结果:两种不同的观点。它们能够集结到一起吗?