HAMMER
Encyclopedia
HAMMER is a high-availability 64-bit
file system
developed by Matthew Dillon for DragonFly BSD
using B-tree
s. Its major features include infinite NFS-exportable snapshots
, master-multislave operation, configurable history retention, fsckless-mount, and checksums to deal with data corruption
. HAMMER also supports data block deduplication
— identical data blocks will only be stored once on a file system.
job run a few minutes every night to incrementally clean up and regain space on the filesystem. Deletions do not immediately reclaim space.
Does not yet support multi-master configuration.
In the performance-related improvements were introduced.
.
The development of major update to HAMMER filesystem is planned.
64-bit
64-bit is a word size that defines certain classes of computer architecture, buses, memory and CPUs, and by extension the software that runs on them. 64-bit CPUs have existed in supercomputers since the 1970s and in RISC-based workstations and servers since the early 1990s...
file system
File system
A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...
developed by Matthew Dillon for DragonFly BSD
DragonFly BSD
DragonFly BSD is a free Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and a FreeBSD developer between 1994 and 2003, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July...
using B-tree
B-tree
In computer science, a B-tree is a tree data structure that keeps data sorted and allows searches, sequential access, insertions, and deletions in logarithmic time. The B-tree is a generalization of a binary search tree in that a node can have more than two children...
s. Its major features include infinite NFS-exportable snapshots
Snapshot (computer storage)
In computer systems, a snapshot is the state of a system at a particular point in time. The term was coined as an analogy to that in photography. It can refer to an actual copy of the state of a system or to a capability provided by certain systems....
, master-multislave operation, configurable history retention, fsckless-mount, and checksums to deal with data corruption
Data corruption
Data corruption refers to errors in computer data that occur during writing, reading, storage, transmission, or processing, which introduce unintended changes to the original data...
. HAMMER also supports data block deduplication
Data deduplication
In computing, data deduplication is a specialized data compression technique for eliminating coarse-grained redundant data. The technique is used to improve storage utilization and can also be applied to network data transfers to reduce the number of bytes that must be sent across a link...
— identical data blocks will only be stored once on a file system.
Features
HAMMER file systems provides the following features:- configurable fine-grained and coarse-grained filesystem histories
- history and snapshots are accessible online
- near real-time log-less streaming mirroring to slaves or backups
- different retention parameters for slaves
- CRC checksumming of data and metadata
- no fsckFsckThe system utility fsck is a tool for checking the consistency of a file system in Unix and Unix-like operating systems such as Linux.-Use:...
required on remount - 1 EiBEIBEIB may stand for:*Epson Ivy Bowl, an American college football bowl game versus an all-star team from Japan*European Investment Bank, the European Union's financing institution*the Export-Import Bank of the United States*Even in Blackouts, an American band...
maximum storage capacity - online layout correction
- data deduplicationData deduplicationIn computing, data deduplication is a specialized data compression technique for eliminating coarse-grained redundant data. The technique is used to improve storage utilization and can also be applied to network data transfers to reduce the number of bytes that must be sent across a link...
Limitations
Requires a pruning/reblocking cronCron
Cron is a time-based job scheduler in Unix-like computer operating systems. Cron enables users to schedule jobs to run periodically at certain times or dates...
job run a few minutes every night to incrementally clean up and regain space on the filesystem. Deletions do not immediately reclaim space.
Does not yet support multi-master configuration.
Performance
The January 2011 review:In the performance-related improvements were introduced.
Development
It was developed specifically for DragonFly BSD to provide a feature-rich yet better designed analogue of then increasingly popular ZFSZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...
.
The development of major update to HAMMER filesystem is planned.
See also
- Comparison of file systemsComparison of file systems-General information:-Limits:-Metadata:-Features:-Allocation and layout policies:-Supporting operating systems:-See also:* Comparison of archive formats* Comparison of file archivers* List of archive formats* List of file archivers...
- List of file systems
- DragonFly BSDDragonFly BSDDragonFly BSD is a free Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and a FreeBSD developer between 1994 and 2003, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July...