重复数据删除是一个消除过多数据副本并显著降低存储容量需求的过程。
重复数据删除可以在将数据写入存储系统时作为实时进程运行,也可以作为后台进程运行,以便在将数据写入磁盘后消除重复数据。
在 NetApp,重复数据删除是一种零数据丢失技术,既作为实时进程运行,也作为后台进程运行,以最大限度地节省空间。它会作为实时进程找机会运行,因此不会干扰客户端操作,它也会在后台全面运行,以最大程度地节省空间。默认情况下,重复数据删除处于启用状态,系统会自动在所有卷和聚合上运行重复数据删除,而无需任何手动干预。
重复数据删除操作的性能开销最低,因为它在一个专用存储效率域中运行,该域与客户端读/写域不同。无论运行哪个应用程序或如何访问数据(NAS 或 SAN),它都在后台运行。
数据在移动时仍保持通过重复数据删除节省的空间 — 数据复制到灾难恢复站点、备份到存储或在内部、混合云和/或公有云之间移动时。
重复数据删除在整个 FlexVol® 卷以及聚合中的所有卷中以 4KB 块级别运行,可消除重复的数据块并仅存储唯一的数据块。
重复数据删除的核心支持技术是指纹 — 所有 4 KB 数据块的唯一数字签名。
将数据写入系统时,实时重复数据删除引擎会扫描传入的块,创建指纹并将指纹存储在哈希存储中(内存数据结构)。
计算指纹后,将在哈希存储中执行查找。在哈希存储中找到匹配的指纹后,将在缓存中搜索与重复指纹(主数据块)对应的数据块:
后台重复数据删除引擎的工作方式相同。它会扫描聚合中的所有数据块,并通过比较这些数据块的指纹以及逐字节比较来消除重复数据,从而消除任何误报。此过程还可确保重复数据删除操作期间不会丢失任何数据。
NetApp® 重复数据删除具有一些显著优势:
无论工作负载类型如何,重复数据删除都很有用。在使用多个虚拟机进行测试/开发和应用程序部署的虚拟环境中,可以获得最大优势。
虚拟桌面基础架构 (Virtual Desktop Infrastructure, VDI) 是另一种非常适合进行重复数据删除的情形,因为桌面之间的重复数据非常多。
Oracle 和 SQL 等一些关系数据库不会从重复数据删除中获得明显优势,因为它们通常会为每个数据库记录提供一个唯一的密钥,从而防止重复数据删除引擎将其标识为重复数据。
AFF 系统上的所有新卷和聚合都会自动启用重复数据删除。 在其他系统上,可以按卷和/或聚合启用重复数据删除。
启用后,系统将自动运行实时和后台操作,以最大程度地节省空间。