`
standalone
  • 浏览: 610512 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ZFS Features Summary

ZFS 
阅读更多

I summarize these from Wikipedia and other documents on ZFS . But some concepts still appear unclear to me, e.g, RAID-Z.

 

Pool Storage

ZFS is not limited to devices and does not need volume manager any more.  File systems can share a common storage pool. creating filesystems is as easy as creating a new directory. You can efficiently have thousands of file systems, each with it's own quotas and reservations, and different properties (compression algorithm, checksum algorithm, etc..)

 

Copy-on-Write

On-disk state is valid. ZFS is a transactional system. All operation transactions are atomic, means they are either submitted or canceled. So all files on disks are consistent and won’t get corrupted by power fault or system collapse. This also avoids double write in logging. So, no fsck, scandisk is needed any more.

 

Capacity

ZFS is a 128-bit file system, so it can address 18 billion billion (1.84*1019) times more than current 64-bit systems.

 

Self-heal

Current file systems detect corrupted data by underlying hardware. ZFS heals itself by associate each block a checksum. If ZFS detects a checksum mismatch on a RAID-Z or mirrored filesystem, it will actively reconstruct the block from the available redundancy and go on about its job. Which brings us to the coolest thing about RAID-Z: self-healing data. In addition to handling whole-disk failure, RAID-Z can also detect and correct silent data corruption. Whenever you read a RAID-Z block, ZFS compares it against its checksum. If the data disks didn't return the right answer, ZFS reads the parity and then does combinatorial reconstruction to figure out which disk returned bad data. It then repairs the damaged disk and returns good data to the application. ZFS also reports the incident through Solaris FMA so that the system administrator knows that one of the disks is silently failing.

 

 

Instantaneous snapshots and clones

This feature makes it possible to have hourly, daily and weekly backups efficiently, as well as experiment with new system configurations without any risks. An advantage of copy-on-write is that when ZFS writes new data, the blocks containing the old data can be retained, allowing a snapshot version of the file system to be maintained. ZFS snapshots are created very quickly, since all the data composing the snapshot is already stored; they are also space efficient, since any unchanged data is shared among the file system and its snapshots. Writeable snapshots ("clones") can also be created, resulting in two independent file systems that share a set of blocks. As changes are made to any of the clone file systems, new data blocks are created to reflect those changes, but any unchanged blocks continue to be shared, no matter how many clones exist.

 

Built-in (optional) compression

In addition to reducing space usage by 2-3x, compression also reduces the amount of I/O by 2-3x. For this reason, enabling compression actually makes some workloads go faster.

 

Highly scalable

Different with traditional file system architecture (File System + Volume Manager + Storage), ZFS is directly based on storage device and provides all kinds of capability, thus it can offer better efficiency.

 

Dynamic Striping vs. Static Striping

Dynamic striping across all devices to maximize throughput means that as additional devices are added to the zpool, the stripe width automatically expands to include them; thus all disks in a pool are used, which balances the write load across them

On by default, dynamic striping automatically includes all deivces in a pool in writes simultaneously (stripe width spans all the avaiable media). This will speed up the I/O on systems with multiple paths to storage by load balancing the I/O on all of the paths.

For each virtual device that is added to the pool, ZFS dynamically stripes data across all available devices. The decision about where to place data is done at write time, so no fixed width stripes are created at allocation time.

 

Variable block sizes

ZFS uses variable-sized blocks of up to 128 kilobytes. The currently available code allows the administrator to tune the maximum block size used as certain workloads do not perform well with large blocks. Automatic tuning to match workload characteristics is contemplated.

If data compression (LZJB) is enabled, variable block sizes are used. If a block can be compressed to fit into a smaller block size, the smaller size is used on the disk to use less storage and improve IO throughput (though at the cost of increased CPU use for the compression and decompression operations).

 

Lightweight filesystem creation

In ZFS, filesystem manipulation within a storage pool is easier than volume manipulation within a traditional filesystem; the time and effort required to create or resize a ZFS filesystem is closer to that of making a new directory than it is to volume manipulation in some other systems.

 

Limitations

ZFS is not a native cluster , distributed , or parallel file system and cannot provide concurrent access from multiple hosts as ZFS is a local file system. Sun's Lustre distributed filesystem will adapt ZFS as back-end storage for both data and metadata in version 3.0, which is scheduled to be released in 2010.

 

 

Links

ZFS: Ten reasons to reformat your hard drives

ZFS on Linux Works

ZFS Filesystem for FUSE/Linux

RAID-Z

Hadoop HDFS + ZFS (RE: Some Doubts of hadoop functionality)

分享到:
评论

相关推荐

    zfs-0.8.4 zfs zfs-0.8.4安装包

    ZFS(Zettabyte File System)是一款先进的、开源的文件系统,由Sun Microsystems开发,旨在提供高可用性、数据完整性以及高效的数据管理。ZFS在0.8.4版本中继续展现出其强大的功能和可靠性,尤其适合大规模存储环境...

    Solaris ZFS管理指南

    ### Solaris ZFS管理指南:深入解析Oracle Solaris ZFS的关键特性与管理实践 #### Oracle Solaris ZFS:概述与核心优势 Oracle Solaris ZFS(Zettabyte File System),作为Oracle Solaris操作系统中的一项核心...

    ZFS源码安装包

    ZFS(Zettabyte File System)是一款先进的、开源的文件系统,最初由Sun Microsystems为Solaris操作系统开发。它集成了数据完整性检查、快照、克隆、存储池、冗余和自动修复等高级功能,被广泛应用于数据中心和高...

    Unix系统zfs文件系统的使用

    **Unix系统ZFS文件系统的使用** ZFS,全称Zettabyte File System,是由Sun Microsystems开发的一款先进的、统一的文件系统和存储管理解决方案。它在Unix-like操作系统中提供了高性能、高可靠性以及数据完整性保障,...

    zfs文件系统源码包

    ZFS(Zettabyte File System)是一个先进的、64位的、开源的文件系统,最初由Sun Microsystems开发,现在在多个开源项目中被广泛使用,包括OpenSolaris、FreeBSD和Linux。它提供了数据完整性检查、高效的数据压缩、...

    zfs-master.rar

    《深入探索ZFS文件系统:基于开源代码的学习与分析》 ZFS,全称为Zettabyte File System(泽字节文件系统),是由Sun Microsystems开发的一种先进的、统一的、64位的文件系统,旨在解决大数据存储和管理中的诸多...

    ZFS中文手册(完整书签)

    Oracle® Solaris 管理:ZFS 文件系统 中文版 同样适用OpenZFS ZFS (old:Zettabyte file system) combines a file system with a volume manager. It began as part of the Sun Microsystems Solaris operating ...

    SUN的ZFS文件系统介绍和使用

    ZFS提供了一系列简洁的命令行工具,如`zfs create`、`zfs snapshot`等,使得管理和维护变得简单易懂。 9. **Performance Optimization**: ZFS通过缓存策略和数据布局优化,提高了读写性能。例如,它可以使用ARC...

    ZFS文件系统的预读策略

    ZFS(Zettabyte File System)是一种先进的文件系统,它最初是由Sun Microsystems公司开发的。由于其设计的复杂性和许多创新特性,ZFS是一个非常强大且高度可扩展的文件系统。预读策略是ZFS的一个重要特性,它涉及到...

    运行在linux下的ZFS

    ZFS在Linux上的实现,通常被称为"ZFS on Linux"(ZOL),它允许用户在Linux环境中享受ZFS提供的强大功能。ZOL项目是一个开源项目,由一群开发者维护,旨在为Linux内核提供完整的ZFS支持。 ZFS的核心特性包括但不...

    Linux服务器ZFS文件系统使用攻略.pdf

    "Linux服务器ZFS文件系统使用攻略" Linux服务器ZFS文件系统使用攻略.pdf 在本文中,我们将详细介绍Linux服务器上ZFS文件系统的使用攻略。ZFS(Zettabyte File System)是一种全新的文件系统,它抛弃了传统的File ...

    zfs 深入部分

    《ZFS深度解析》 ZFS,全称Zettabyte File System,是由Sun Microsystems开发的一种先进的文件系统,它集成了数据完整性、空间效率和可扩展性等特性于一身。ZFS的设计理念是将数据保护、存储管理和性能优化融为一体...

    zfs.rar_ZFS

    **ZFS:超越传统的文件系统** ZFS,全称Zettabyte File System,是由SUN Microsystems(现为Oracle的一部分)研发的一种创新性文件系统。它在2001年首次亮相,是全球首个采用128位地址空间的文件系统,这使其具有...

    ZFS相关资料

    ZFS,全称为“Zettabyte File System”,是由Sun Microsystems开发的一种先进的文件系统,它集成了数据保护、存储管理以及高性能等特性。ZFS在设计上具有许多创新点,包括数据完整性检查、快照、克隆、透明压缩、...

Global site tag (gtag.js) - Google Analytics