EN
返回档案库

案例库 · 工程与运营 · 技术决策 · 1992–2000

NetApp 的 WAFL 把备份变成了一个指针,快照从此免费且即时

WAFL 从不覆盖块:快照就是一个保存的根指针,提供即时、节省空间的备份,使 NetApp 成为 NAS 领导者。

NetApp (Network Appliance)

解法

1992 年,Dave Hitz、James Lau 和 Michael Malcolm 创立了 Network Appliance,致力于打造专用的 NFS 文件服务器。Unix 文件系统的夜间备份意味着数小时的复制或磁带操作,而崩溃后的一致性检查可能持续与停机时间一样长。

他们在 1994 年的 USENIX 论文中介绍了 WAFL:文件系统在任何位置写入,并保留旧根指针,因此快照是只读克隆,通过复制指针即可即时创建。写入时复制意味着只有块发生变化时才消耗空间;WAFL 在线保留多达 20 个计划快照,并通过 .snapshot 目录向用户展示,以便用户自行恢复误删的文件。

同样的机制在非正常关机后免除了漫长的一致性检查,这是该设备的一个关键卖点。NetApp 的快照功能成为行业标准;公司于 1995 年上市,收入超过 10 亿美元,并成为领先的 NAS 供应商。

生效的原因

  • 快照是指针副本,因此创建只需毫秒,而非数小时。
  • 写入时复制意味着旧版本在数据变化前几乎不占用磁盘。
  • 用户通过 .snapshot 目录自行恢复误删的文件。
  • 崩溃后快速重启消除了文件服务器最大的痛点。
取得的成效绝不覆盖;快照是一个指针神来之笔

可借鉴之处

如果你害怕的事情(备份、撤销、重启)代价高昂,那就改变写入路径:当每次变更都按构造进行版本化时,恢复产物就是你已有的指针。

后续进展

快照及其衍生产品(SnapMirror、FlexClone、去重)在三十年间一直是 NetApp 的产品核心。1994 年的论文是存储系统的经典之作,此后所有主要文件系统——包括 ZFS 和 Btrfs——都借鉴了其写入时复制的快照理念。

资料来源

发现哪里写错了?告诉我们。

相关案例