• WAP手机版 RSS订阅 加入收藏  设为首页
当前位置:首页 > 服务器数据恢复

云存储的基本概念和实施方案

时间:2016-12-14 17:04:56  作者:  来源:  浏览:0  评论:0
内容摘要: 云存储(也许不是迄今为止发明的最佳标签)承诺将满足未来出现的大量的存储需求,而且要以非常好的性价比实现这个目的。本文简要介绍一下云存储的概念和挑战。   这类存储有许多名字。例如,它有时候叫作“在线存档”或者称作“廉价冗余节点阵列(RAIN)”。但是,“云存储”不管是好是坏都是最流行的名字。这个整个概念是非常简单的:...

  云存储(也许不是迄今为止发明的最佳标签)承诺将满足未来出现的大量的存储需求,而且要以非常好的性价比实现这个目的。本文简要介绍一下云存储的概念和挑战。
  这类存储有许多名字。例如,它有时候叫作“在线存档”或者称作“廉价冗余节点阵列(RAIN)”。但是,“云存储”不管是好是坏都是最流行的名字。这个整个概念是非常简单的:云存储利用分布式存储节点并且使用某些类型的文件系统把这些节点结合起来,以便创建一个单个的存储系统,但是,这个系统的性能非常低 (因此有“在线存档”这个词汇)。它依靠复制而不是依靠RAID(廉价冗余磁盘阵列)通过拥有在各个节点的数据的多个副本实现数据的弹性。

  除了诱人的特点之外,它是一个非常简单的概念。它的挑战性和恶魔总是隐藏在细节之中。本文将探索云存储的一些基本概念和实施方法。

  对象存储介绍

  争论存储正在以惊人的速度增长这个事实充其量是一个无用的讨论。某些市场正在以真正的前所未有的速度增长并且可能以吓人的速度增长。例如,基因排序应用程序产生大量的数据,各个组的数据在线上都有若干PB(1PB = 10的15次方字节),在未来2、3年内这种数据将达到几百PB。这种数据的用户要让这些数据在任何时候都要全部在线上。他们知道性能不必非常出色,因为他们不会长时间访问这个数据(因此有“在线存储”这个词汇)。然而,他们要求这些数据在任何时候都在线上并且很多时候是在一个命名空间。传统的存储概念可以开始在PB的范围内细分。例如,在PB范围内的存储块数量很多。如果我们假设存储块的尺寸是4KB,那么,一个1PB文件系统的存储块数量是:

  1 PB = 1015字节 = 1013 KB

  1 PB中的块的数量 = 1013 KB / 4 KB/块 = 2.5 x 1012 块

  那是一个文件系统必须要解决的2.5万亿个块。设想一下这个文件系统的一个fsck磁盘修复命令。现在,把存储块的数量增加100倍甚至1000倍,你会理解为什么人们正在寻找一些存储解决方案替代传统的基于存储块的方案。

  有最大的成功的可能性的当前的这个概念是基于对象的存储。“对象”这个词汇总的来说一直有些言过其实的宣传。但是,它在存储环境中确实工作得很好。不是让文件系统跟踪在一个数据架构中的文件系统中的每一个块,一个基于对象的文件系统把数据分成许多部分。每一个部分是一个对象,不仅包含数据而且还包含对象 ID等额外的信息。然后,文件系统只需跟踪这个对象的ID,这个数据量要比跟踪与数据有关的所有的块少得多。这种方法能够给你更多的设计文件系统及其功能的自由,允许你升级到更大的文件系统规模。

  Panasas公司的Jan Jitze Krol对于对象存储有一个很好的比喻。让我们假设你要去一个商店购物。你可以开自己的汽车进入停车库并且停在第三层、5区、从最里面数第7个停车位,然后你去商店购物。当你结束购物的时候,你必须要记住你停车位置的号码,然后直接去你的汽车,这是一个典型的文件系统工作方式的比喻。对于对象存储的比喻,假设你来到停车库,服务生为你泊车。你去购物回来之后向服务生出示你的泊车凭证,服务生就知道你的汽车停在什么地方并且把汽车交给你。服务生的好处是他们能够根据需要移动汽车的位置。他们甚至能够分解和重建这个车库。你甚至不知道发生了这种事情。这个在你不知道的情况下移动你的汽车的比喻为文件系统提供了巨大的灵活性。这个文件系统能够优化数据布局(你的汽车所在的位置),增加更多的存储(增加到停车库),检测数据以保证它仍然正确(检测你的汽车保证没有损坏,如果损坏将为你修理并且通知你),还有许多其它任务。需要指出的是这些任务是在元数据管理员很少参与的情况下完成的。

  RAIN而不是RAID

  无论这个文件系统是不是基于对象的,存储的弹性总是一个问题。在这个环境中,弹性意味着在保持访问数据的同时具有容错能力。在PB范围中的数据弹性是非常重要的。理由很简单,它实际上不可能为这个范围的存储提供备份。因此,把重点放在存储的弹性方面是极为重要的。

  大家也许都知道RAID是一种数据弹性的技术。它的重点是在节点本身的数据弹性,允许错误在存储节点内部发生,不失去数据弹性。某些类型的RAID允许你失去一个或者几个硬盘而不损失任何数据或者能够访问数据。但是,RAID仅是改善数据弹性的一种技术。

  另一种技术称作RAIN。采用这个概念,不是容忍在一个RAID组中失去一个或者两个硬盘而不损失数据,而是存储能够容忍丢失一个整个的存储节点而不损失任何数据。这是通过把数据复制到分布式的节点中实现的。在这个文件系统中保留数据的多个副本。然而,RAIN通常包括把文件系统与硬件结合起来,因为这个文件系统必须要知道数据的这些副本在什么地方以及这个文件系统中的各个节点的状况。

  一般来说,基于对象的存储或者对象式的存储以及RAIN结合在一起就是云存储。

云存储--观念与挑战

  正如以前说过的那样,恶魔存在于细节之中。要让云存储很好的发挥功能,一些观念是不合适的。云存储的四个基本方面是:

  ·容易管理

  ·自我复制

  ·自我修复

  ·自我平衡

  最基本的观念是存储容易管理(谁要使用现在的工具和概念管理一个PB规模的存储系统?)。采用云存储,管理员详细制定有关存储功能如何发挥作用的政策。管理员基本上要确定在这个存储中的每一个数据文件或者每一种类型的数据文件有多少个副本。然后,文件系统跟踪数据以保证这些政策的完成。

  从技术上说,也许最基本的观念是文件系统是自我复制的。如果一个节点发生故障,这个文件系统必须做出反应,让这个节点离线,然后检查那个节点上有什么数据并且保证根据政策把那个数据复制到其它节点。这个想法就是使用上面讨论的RAIN并且进入到云存储如何发挥功能的核心。

  自我修复技术可以包括这个文件系统实施数据检查的校验和,检查损坏的数据和改正其它副本中的损坏的数据。这包括检查数据传输以保证传输的数据与存储中的数据是一致的。

  存储的另一个重要的方面是自我平衡。理想的情况是这个文件系统应该在存储中到处移动数据以最大限度减少热点以便平衡存储。这种平衡可以是为了性能(虽然云存储通常被认为是低性能的存储)或者容量。在这个文件系统中还有基于故障模型的探索方法。这样,副本在存储中的位置是平衡的(也就是说副本存储在哪一个节点是平衡的)。

  然而,每一种类型的存储在实施中都有一些挑战(也就是说恶魔在细节之中)。这些挑战包括:

  ·安全(总是一个问题,不是云存储的具体问题)

  ·数据完整性(保证存储的数据是“正确的”)

  ·电源(由于你有副本,你将有需要增加电源的额外的存储)

  ·复制时间和成本(你复制数据的速度有多快,因为这对于数据弹性是非常重要的)

  ·成本(你有多少额外的资金购买副本的额外存储)

  ·可靠性

  Henry Newman的文章详细讨论了最后一个问题……虽然RAID能够容忍失去一个或者两个硬盘,但是,RAIN能够依靠复制保持数据的弹性。因此,它能够以多快的速度复制数据和保持的数据完整性如何是云存储有用性的关键。

云存储的两个例子

  有一些(很多吗?)云存储的例子。但是,这里讨论的例子是市场上的例子。这两个例子是Caringo和Parascale。

  这两个概念是非常相似的。你有一个有一些存储的节点,可以是内部的,也可以是外部的。这个节点能够用作云存储的一部分,只要它们能够使用TCP/IP协议相互之间进行通讯。你可以安装这个软件或者访问一个优盘,这个新的节点就把自己添加到这个存储池。你不需要RAID,只需要许多存储(也就是所谓的 “cheap and deep”<廉价和深的>战略)。这个元数据是分布式的。因此,如果一个节点发生故障,总有另一种方法得到元数据(真正的数据)。然后,管理员创建一些政策,你可以让数据进出这个存储池。

  访问这个存储是两个例子与其它系统稍微有些不同的地方。它们每一个都有相同的访问协议。

  · HTTP

  · WebDAV

  · FTP

  · NFS (以某种形式)

  注意,它们都没有客户端软件,因此,各种系统都能直接访问这个文件系统。你不用使用以前提到的任何一个协议就可以访问数据。

  总结

  云存储系统有许多承诺。它们对于数据弹性使用一种不同的方法:把RAIN与基于对象的或者对象式的文件系统和数据复制(数据的多个副本)结合起来创建一个非常有伸缩性的存储系统。按照设计,它们不是高性能的文件系统,而是非常有伸缩性的容易管理的存储系统。

  每一个东西都有自己的吸引人的特点和不吸引人的特点。本文详细介绍了这种方法的主要特点。云存储能够通过把基于对象的存储概念与RAIN概念结合在一起满足那些对于性能要求很低但是对于伸缩性要求极高的存储的需求。但是,同时,云存储还面临一些挑战,包括不断地检查数据是否损坏并且修复数据(自我修复)和可靠性(多少个数据副本能够提供规定的正常运行时间)。


相关评论
不良信息举报中心成都网警网警110报警服务AAA级互联网行业信用360网站安全检测

数据恢复QQ交流群:378664983    站长QQ:958754010

蜀ICP备14015947号-2