开始 让自己跟上我们介绍内容的速度。

擦除编码定义:RAID 5、RAID 6是最常见的形式

Erasure编码定义:RAID 5、RAID 6是最常见的形式;加州大学教授解释了不同类型,适当的工作量,产品差异。

企业IT部门非常熟悉最常见的擦除编码形式——RAID 5和RAID 6——但他们可能还会听到更多可以防止数据丢失的Erasure代码2个以上硬盘、存储节点或地理位置。

在这期播客采访中,加州大学圣克鲁兹分校的计算机科学教授伊桑·米勒(Ethan Miller)描述了擦除编码是如何工作的,它的不同类型、应用程序和工作量擦除编码是最合适的以及支持擦除编码的产品之间的区别特征。他还分享了自己对未来的看法擦除编码的潜力

米勒教授研究擦除编码以及如何在存储系统中使用它。除了在大学里的工作,米勒还是纯存储公司(Pure Storage Inc.)的兼职员工固态存储阵列.擦除编码并不是他在公司的主要工作重点,而且Pure Storage的产品目前除了RAID 5和组合之外没有使用擦除编码RAID 6

你能给我们提供一个好的擦除编码的工作定义吗?

伊森·米勒:擦除编码是一套算法,可以从一组原始数据中重建缺失的数据。例如,如果我有六块的数据我想保护,我可以使用一个擦除编码算法来生成另外两块,给我总共8,至少擦除类型的编码我们可能会讨论,任何六块足以重建丢失的两个。

擦除编码的重点是你可以选择原始数据块的数量,基本上你想要多少就有多少。我知道有一些是200,还有一些是奇数。你也可以选择你想要的复制数量。所以,我可能会说,我有10个原始数据块和8个冗余数据块,总共是18个,任意10个都可以让我重建原始数据。

几乎每个IT商店都使用RAID 5和RAID 6,这是非常常用的擦除编码类型。大多数IT公司真的不需要太担心使用擦除码至少目前,这可以防止两次以上的数据丢失。原因是同一组的两个设备同时故障的几率相对较小。如果您运行一个非常大的IT公司,比方说一个拍字节或更多,也许您确实需要考虑执行擦除编码的替代方法,以防止同时发生两个以上的数据丢失。

有不同类型的擦除编码吗?

米勒:是的,人们应该注意两种基本类型。有一种类型——Reed-Solomon就属于这一类——假设你有12个数据元素和4个erasure code元素,从16个元素中任意12个元素都足以重建缺失的元素。任何12。哪四个失败并不重要;你可以随时重建。

还有一个问题擦除码的类型这在今天变得越来越常见,你可能有12个数据元素和4个erasure code元素,erasure code可以从4个元素的大部分故障中恢复,但不是所有故障。当然,这有点风险,所以你必须得到一些回报。你得到的回报是,不再需要12个元素来重建任何缺失的东西,你可能只需要3、4、5、6个元素。因此,您可能需要阅读更少的内容来重新构建,但折中之处在于,有一些4个失败的集合您无法从中恢复。

所以当你在看一个系统时,如果你关心它,试着确保他们使用里德-所罗门。但如果你在寻找性能,可能四次失败的微小概率是数据丢失——也许这对你更有吸引力。是很重要的注意这些区别.根据您的申请,您可以选择其中之一。

擦除编码对于哪些应用程序、工作负载和数据类型是最合适的?

米勒:档案数据是一种非常合适的数据类型。这是因为对于存档数据来说,它将会存在很长一段时间。丢失一个甚至两个或更多设备的几率会大大增加。

关于存档数据的第二件事是你不经常写它,这使得它很容易被擦除。你写过一次,之后可能会读,也可能不会读。擦除编码在写操作上增加了大部分开销,但在读操作上不增加太多开销。事实上,读取的唯一开销是在出现故障时。如果没有失败,在大多数情况下,擦除代码真的不会对读取产生影响。

对于应用程序,这意味着如果你有一个非常活跃的东西,有很多读写操作,擦除代码可能不是正确的选择。但如果你的应用程序大部分是只读的,擦除代码可以给你非常好的可靠性,以相对较小的开销抵抗数据丢失,因为性能方面的开销是在写时产生的。

一种产品的擦除编码和另一种产品的擦除编码有什么区别?

米勒:我认为区别他们的第一点是基础性能。换句话说,基于它们的实现,它的写作速度有多快?当你恢复的时候,你的阅读速度有多快?

另一个问题是,他们是如何分割擦除编码的单元的?它可以是整个磁盘。可以是体积。它可能是磁盘或设备的一部分。可能是这些东西中的任何一个。显然,有一个问题是擦除编码字有多大——10个数据设备和5个擦除编码设备相对于12个和4个——但通常大多数产品在这方面都是相当可配置的。

另一个不同开始成为一个问题,但不一定是一个问题,是多种类型的擦除代码。大多数产品都使用Reed-Solomon编码,所有Reed-Solomon编码的工作方式基本相同,[取决于]您的实现速度有多快。但还有其他形式的擦除码,为了让事情更快地恢复,例如,他们会说,我们不能从四个设备的所有故障中恢复,我们可以从四个设备的99.9%的故障中恢复,但不是全部。做这个小小的权衡可以让您的删除编码更快,但它确实略微增加了风险。因此,在这种情况下,重要的是要理解:我能从所有四个设备故障或大部分故障中恢复吗?

所以,在不同公司的实施过程中会有一些不同的细节。很重要的一点是,试着多了解一点擦除代码是如何工作的,以及在决定一个产品的擦除代码和另一个产品之间的区别时,它可以从哪些失败中恢复过来。

你认为擦除编码是未来的潮流吗?

米勒:我认为对某些东西来说,擦除编码是未来的趋势。当然,档案存储在我看来,擦除编码是绝对必要的,因为如果你要存储数据10年或20年,你会希望在更多的失败中存活下来。而且,对于长期的档案存储,你几乎总是在阅读它。正如我们前面所说的,唯一的性能开销是写。因此,对于档案存储来说,擦除编码绝对是未来的潮流。我认为这是毫无疑问的。

至于其他方面,我认为擦除编码是否会成为未来的潮流,取决于设备容量和读取或写入所需时间之间的相对速度差异。相对于读写速度,设备越大,擦除编码就越重要。这就是为什么我们在20世纪90年代中期从RAID 5开始,那时我是突袭今天在加州大学伯克利分校的RAID 6小组。因为我刚开始的时候,你花了几分钟才读完整个硬盘。现在你可以花上一天的大部分时间。如果以最快速度阅读你的媒体需要一个星期,你可能需要更好的擦除代码,因为在你重建它的时间里,一个星期,你可能会有两到三次失败。你希望能够从这些问题中恢复过来。所以我认为,随着我们的存储设备变得更大,而且不一定以同样的速度更快,我们将越来越需要擦除编码。

深入挖掘数据存储策略

搜索灾难复苏
搜索数据备份
搜索聚合基础设施
关闭
Baidu