22.1.是什么使 ZFS 与众不同

ZFS 是一种先进的文件系统,旨在解决以前存储子系统软件中发现的主要问题。

最初由 Sun™开发,持续的开源 ZFS 开发已经转移到 OpenZFS 项目。

ZFS 有三个主要设计目标:

  • 数据完整性:所有数据包括数据的校验和。ZFS 计算校验和并将其与数据一起写入。稍后读取该数据时,ZFS 会重新计算校验和。如果校验和不匹配,意味着检测到一个或多个数据错误,ZFS 将在可用的重复、镜像或奇偶块时尝试自动纠正错误。

  • 汇集存储:向池中添加物理存储设备,并从共享池中分配存储空间。所有文件系统和卷都可以使用这些空间,通过添加新的存储设备到池中来增加空间。

  • 性能:缓存机制提供了增加的性能。ARC 是一种高级的基于内存的读取缓存。ZFS 提供了一个第二级的基于磁盘的读取缓存 L2ARC,以及一个名为 ZIL 的基于磁盘的同步写入缓存。

ZFS 功能和术语的完整列表在 ZFS 功能和术语中。

ZFS 不仅仅是一个文件系统,它在根本上与传统文件系统有所不同。将卷管理器和文件系统的传统分离角色结合起来,使 ZFS 具备了独特的优势。现在,文件系统已经意识到了磁盘的底层结构。传统文件系统一次只能存在于单个磁盘上。如果有两个磁盘,就需要创建两个单独的文件系统。传统的硬件 RAID 配置通过将操作系统呈现给由物理磁盘提供空间组成的单个逻辑磁盘来避免这个问题,在其上操作系统放置了文件系统。即使使用像 GEOM 提供的软件 RAID 解决方案,UFS 文件系统在 RAID 上运行时也认为自己在处理单个设备。ZFS 通过卷管理器和文件系统的结合解决了这个问题,并能让创建共享可用存储池的文件系统。ZFS 意识到物理磁盘布局的一个重要优势是,当向池中添加额外磁盘时,现有文件系统会自动增长。然后,这些新空间变得对文件系统可用。ZFS 还可以为每个文件系统应用不同的属性。这使得创建单独的文件系统和数据集比创建单一的单片文件系统更为有用。

最后更新于

FreeBSD 中文社区