你将了解到:本文讨论的是针对主存储的重复数据删除技术。当你针对你的主存储进行重复数据删除时,无论你使用的是联机重复数据删除还是后处理重复数据删除,它都会检查你应用的数据选择标准,而且重复数据删除将会对你的数据存储环境产生影响。
重复数据删除已经成为一个热门话题,而且在基于磁盘的备份和归档中是一种非常普遍的做法。用户最初的戒心已被应用取代,并且对技术的深度关注开辟了更多的途径来利用重复数据删除带来的好处。针对重复数据删除的下一个前沿领域主存储。
什么是主存储?
主存储由集中存储区域网络(SAN)或者网络附属存储(NAS)阵列上的磁盘驱动器(闪存驱动器)组成,主要用来进行日常业务的数据存储。这主要包括结构化数据,例如数据库,和非结构化数据,例如电子邮件数据、文件服务器数据和大多数文件类型的应用程序数据。弄清这点区别是非常重要的,因为不是所有的数据都适合主存储重复数据删除。
重复数据删除技术的类型
有两种主要的重复数据删除技术:联机和后处理。联机重复数据删除技术在对磁盘进行写入过程中对数据进行辨识。后处理重复数据删除技术是在数据被写入磁盘后进行。联机重复数据删除被认为在整体存储方面更加有效,因为非唯一的或者重复的数据块在被写入磁盘之前就被删除。由于重复的数据块被删除了,所以你不需要分配足够的存储空间为后来的重复数据写入整个数据集。然而,联机重复数据删除要求更多的处理器能力,因为它“一直在进行”,这会潜在的影响存储性能,在实施主存储重复数据删除时这是一个非常重要的考虑因素。另一方面,后处理重复数据删除并不会立即对存储性能产生影响,因为重复数据删除可以被安排在数据被写入磁盘后发生。然而,与联机重复数据删除技术不同,后处理重复数据删除在它通过重复数据缩减之前,需要分配足够的有效数据存储来装载整个数据集。
为主存储重复数据删除选择数据标准
你怎样决定哪一种主存储数据适合进行重复数据删除呢?这就是结构化和非结构化数据发挥作用的地方。一个数据库文件可以是一个非常大的文件,经常被顺序和随机的读写。因此,大多数这种数据被认为是活跃的。这意味着处理任何与重复数据删除相关的开销可能显着影响的I / O性能。相反,如果我们检查一个文件服务器上的数据,我们会很快的发现,只有一小部分分区的文件被写超过一次,而且通常发生在它们被创建后的很小一段时间内。这意味着非结构化数据的很大一部分是很少被访问的,使之成为重复数据删除主要的候者。这就可以基于上次访问时间戳制定重复数据删除策略。针对虚拟服务器或者桌面环境的共享存储也为重复数据删除提供了很好的机会,因为许多操作系统文件不是唯一的。
其他的数据选择标准包括格式化类型和数据保存类型。加密数据和一些镜像或者流视频文件因为它们的随机性,进行重复数据删除的结果将会很差。此外,数据必须保存在存储中一段时间以产生足够多的重复块使得进行重复数据删除的操作是有意义的。瞬态数据,只是在短期内驻留在主存中,例如消息队列系统或者临时日志文件,应当排除在外。虽然归档数据会产生最佳的重复数据删除比率,但是此种数据类型不适合我们在主存储重复数据删除中讨论。
联机重复数据删除技术VS后处理重复数据删除技术
比方说,你已经排除加密的数据,视频流和瞬态数据,并且已经制定好规则,以确定“上次访问”时间和保留类型。你已经确定了的主存储是非常适合重复数据删除。到了决定你将选择联机重复数据删除还是后处理重复数据删除的时候。有能力进行重复数据删除的文件,一旦它们失效或者有一段时间没有被访问,进行后处理重复数据删除优于联机重复数据删除,因为只有被选择的数据在较后的时间基于具体的条件可以进行重复数据删除,并且在被写入磁盘之后。请记住,这与联机重复数据删除相反,当它们被写时,联机重复数据删除将处理所有的数据,而且会影响某种类型数据的性能。虽然联机重复数据删除即时处理所有数据,但是应用在主存储上时并不总是一个差劲的选择。它只是意味着存储分层——确定在你需要最佳的性能——在决定对主存储应用重复数据删除技术之前这是至关重要的第一步。
不是所有的数据适合都你的主存储
需要频繁访问并且需要最佳写性能的数据不适合进行重复数据删除。数据的格式可以存储在无重复数据删除功能,低性能磁盘阵列上来降低成本,因而这样的数据难以进行重复数据删除。其他的不需要经常或者高性能访问的数据(例如应用程序或者用户文件)可以存储在有重复数据删除功能的主存储阵列上。