备份中的“消重加速器”存储与灾备
消重已经成为了备份流程中一个基本的部分。然而,那些通常会制造大量数据的组织发现本应优化备份流程的消重技术实际上会对备份系统造成问题。
要避免出现这些问题,一些备份厂商开始提供能让消重流程更加高效的产品。本文将会讨论这些“消重加速器”是如何工作的。
每个提供消重加速功能的备份厂商都有他们各自的方法。例如,EMC提供“全局消重”功能,通过将许多工作负载交给备份服务器的方式来减少备份设备的负荷,以此来提升性能。
一般说来,消重加速基于分布式处理的原则,而非让单台设备来处理所有备份消重任务。备份消重任务被分布到多个设备上,通过多设备并行处理以便更快的执行任务。这样结果就显而易见了,消重变得更高效。而且这也能更高效的利用CPU和网络带宽资源。
让我们用一个更具体的例子来讲述消重加速是怎么实现的。假设有一个线内、目标端消重的环境,这种架构通常有一个或多个备份服务器将数据发送到备份设备。备份设备会检查每个收到的数据块,如果数据块是唯一的,则将其写入备份存储。如果数据块不是唯一的,则检查该数据块的拷贝在备份存储中的位置,然后更新数据库条目,将该数据块与已经被备份的数据关联起来。
尽管这种工作方式没有问题,但它的扩展性却不好。随着需要备份的数据量的增大,备份设备的性能将达到极限,线内消重处理将成为一个瓶颈。要解决这一问题,其中的一个解决方案是使用分布式消重技术来提升扩展性。
在之前的案例中,备份服务器盲目地将数据流发送到备份设备,然后备份设备再进行数据消重和存储数据。数据流在这里是单向的。在使用消重加速的环境中,单向数据流变成了双向数据流。也就是说,备份服务器和备份设备之间会互相通信,这将使备份消重流程更加高效。
虽然每个厂商实现消重加速的具体方法都不同,但它们一般都会让备份服务器在发送数据至备份设备前去确定数据是否是唯一的。否则,就要让备份设备去检查了。
具体的实现方法是,备份服务器会计算需要备份的数据块的哈希值,并将该哈希值发送至备份设备,而非传送整个数据块。当备份设备收到该哈希值,它会将其与它的哈希表对比,确定该数据是否唯一。如果数据是冗余的,则无需备份该数据块。
如果数据是唯一的,备份服务器需要将数据块传送到备份设备以完成备份。有的备份产品可以在传送该数据块之前将数据块进行压缩,这样可以节省网络带宽,这在低带宽的环境中是非常重要的。
这种方法不但大大的减少了WAN带宽的使用,也提升了备份的速度。这里要再次说明,使用消重加速对资源的节省情况在每个产品中都是不同的。EMC声称其Data Domain Boost产品可以提升50%的速度,并节省80%至99%的网络带宽。
备份设备在执行线内数据消重时,随时都有被大量进入设备的数据流冲垮的风险,特别是在多台备份服务器向单个备份设备发送数据的环境。消重加速技术通过将一部分消重工作迁移到备份服务器的方式来解决这个问题,同时也节省了资源的使用,并且让消重的扩展性变得更好。