Solaris ZFS
The Solaris ZFS file system is a revolutionary new file system that has been designed to be robust, scalable, and simple to administer. ZFS is a new file system technology that provides immense capacity (128-bit), provable data integrity, always-consistent on-disk format, self-optimizing performance, and real-time remote replication.
ZFS is available on Solaris 10, both SPARC and x86 platforms and its endian-neutral capabilities enables disks to be moved easily between SPARC and x86 servers.
Simplified Administration
ZFS uses the concept of storage pools to manage physical storage. The storage pool describes the physical characteristics of the storage (device layout, data redundancy etc.) and acts as an arbitrary data store from which file systems can be created. File systems are no longer constrained to individual devices, allowing then to share space with all file systems in the pool. File systems dynamically grow and shrink as needed without the need to re-partition underlying storage.ZFSsimplifies storage administration, by using a storage pool, andeliminates the traditional, multi layered, volume management approach.
ZFS provides a greatly simplified administration model. Through the use of hierarchical file system layout, property inheritance, and auto management of mount points and NFS shares. The following link shows how quick and easy it is to create 100 mirrored file systems in a matter of minutes. The demo also contains examples of some of the additional features of ZFS, namely setting quotas on a file system, turning on compression and taking a snapshot.
http://www.opensolaris.org/os/community/zfs/demos/basics
End-to-End Data Integrity
One of the design principles for ZFS was: “never, ever trust the underlying hardware”. All data and metadata is check summed using a user-selectable algorithm. The data and checksum are stored separately on disk, so that a single failure cannot take them both out. ZFS constantly reads and checks data to help ensure it is correct, and if it detects an error in a storage pool with redundancy ZFS automatically repairs the corrupt data.
ZFS is a transactional file system, which means that the file system is always consistent on disk. Data consistency is protected via Copy-On-Write (COW). For each write request, a copy is made of the specified block. All changes are made to the copy. When the write is complete, all pointers are changed to point to the new block.
With a transactional file system data is never overwritten, and any sequence of operations is either entirely committed or entirely ignored. This mechanism means that the file system can never be corrupted through accidental loss of power or a system crash. So, no need for a fsck equivalent exists. While the most recently written pieces of data might be lost, the file system itself will always be consistent.
These features combine to ensure data integrity and availability.
Immense Capacity
As the world's first 128-bit file system, ZFS offers 16 billion times the capacity of 32- or 64-bit systems. The name Zettabyte file system (ZFS) is a misnomer as a zettabyte (ZB) is only 1 billion terabytes, while the actual capacity of a ZFS pool is 256 quadrillion ZB.
All metadata is allocated dynamically, so no need exists to pre-allocate inodes or otherwise limit the scalability of the file system when it is first created. All the algorithms have been written with scalability in mind. Directories can have up to 256 trillion entries, and no limit exists on the number of file systems or number of files that can be contained within a file system.
ZFS requires a system that runs a 64-bit kernel, and its recommend to have a gigabyte or more of memory. Approximately 64 Kbytes of memory is consumed per mounted ZFS file system.
Where speed is concerned, ZFS is as fast as your disks, controllers, and device drivers. It is subject to the same hardware bottlenecks as all other means of managing storage. ZFS features such as intelligent prefetch, copy-on-write, batch-write-back implementations provide some performance enhancements. Storage pool performance can degrade when a pool is very full and file systems are updated frequently, such as on a busy mail server. Under these circumstances, keep pool space below 80% utilization to maintain pool performance.
With ZFS it is very easy and fast to create multiple file systems and ZFS is extremely flexible in its use of storage devices.