Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

HAMMER (file system)

From Wikipedia, the free encyclopedia
File system from DragonFly BSD
This articlecontainspromotional content. Please helpimprove it by removingpromotional language and inappropriateexternal links, and by adding encyclopedic text written from aneutral point of view.(December 2021) (Learn how and when to remove this message)
HAMMER
Developer(s)Matthew Dillon
Full nameHAMMER
IntroducedJuly 21, 2008; 17 years ago (2008-07-21) withDragonFly BSD 2.0[1][2]
Structures
Directory contentsModifiedB+ tree[3]
Limits
Max volume size1EiB[3]
Features
ForksNo
File system
permissions
UNIX permissions
Transparent
compression
Yes[4]
Data deduplicationOn demand
Other
Supported
operating systems
DragonFly BSD

HAMMER is a high-availability64-bitfile system developed byMatthew Dillon forDragonFly BSD usingB+ trees. Its major features include infinite NFS-exportablesnapshots,master–multislave operation, configurable history retention,fsckless-mount, andchecksums to deal withdata corruption.[5] HAMMER also supports data blockdeduplication, meaning that identical data blocks will be stored only once on a file system.[6] A successor,HAMMER2, was announced in 2011 and became the default in Dragonfly 5.2 (April 2018).[7]

Features

[edit]

HAMMER file system provides configurable fine-grained and coarse-grained filesystem histories with online snapshots availability. Up to 65536master (read–write) andslave (read-only)pseudo file systems (PFSs), with independent individual retention parameters and inode numbering, may be created for each file system; PFS may be mirrored to multiple slaves both locally or over network connection with near real-time performance. No file system checking is required onremount.[5][8][9][10]

HAMMER supports volumes up to 1 EiB of storage capacity. File system supportsCRC checksumming of data and metadata, online layout correction anddata deduplication, and dynamicinodes allocation with an effectively unlimited number of inodes.[8][11][12]

Limitations

[edit]

As of May 2020[update], regular maintenance is required to keep the file system clean and regain space after file deletions. By default, acron job performs the necessary actions on DragonFly BSD daily. HAMMER does not support multi-master configurations.[8][10]

Performance

[edit]

HAMMER is optimized to reduce the number of physical I/O operations to cover the most likely path,[13] ensuringsequential access for optimal performance.

The following performance-related improvements were introduced inJuly 2011:[14]

  • Increased disk read speed in certain scenarios by implementing pulse-width modulated time-domain multiplexer on B-tree cursor operation
  • Removed a deadlock stalling issue
  • Improved read performance during heavy, concurrent file write operations

Development

[edit]

HAMMER was developed specifically for DragonFly BSD to provide a feature-rich yet better designed analogue[according to whom?] of the then increasingly popularZFS.

HAMMER was declared production-ready with DragonFly 2.2 in 2009;[9] in 2012, design-level work shifted ontoHAMMER2, which was declared stable with DragonFly 5.2 in 2018.

As of 2019[update], HAMMER is now often referred to as HAMMER1 to avoid confusion with HAMMER2, although an official renaming has not happened. Both filesystems are independent of each other due to different on-disk formats,[15][16] and continue to receive separate updates and improvements independently.[17]

See also

[edit]

References

[edit]
  1. ^"В состав DragonFlyBSD 2.0 будет включена файловая система HAMMER".Linux.org.ru (in Russian). 2007-10-14. Retrieved2019-08-21.
  2. ^Larabel, Michael (7 January 2011)."Can DragonFlyBSD's HAMMER Compete With Btrfs, ZFS?".Phoronix. Retrieved2014-05-26.
  3. ^abDillon, Matthew (21 June 2008)."THE HAMMER FILESYSTEM"(PDF). Retrieved2009-03-02.
  4. ^"HAMMER2 File-System Now Uses LZ4 Compression By Default - Phoronix".www.phoronix.com.
  5. ^abhammer(5) – DragonFly BSD File FormatsManual
  6. ^Sherrill, Justin (7 November 2010)."Deduplication arrives". Archived fromthe original on 2011-10-03. Retrieved2011-11-28.
  7. ^Dillon, Matthew (11 May 2011)."HAMMER2 announcement".users (Mailing list).
  8. ^abc"HAMMER".DragonFly BSD. Retrieved2011-11-28.
  9. ^abVervloesem, Koen (21 April 2010)."DragonFly BSD 2.6: towards a free clustering operating system".LWN.net. Retrieved2014-05-26.
  10. ^abGeorge, Siju (May 2014)."Working with Hammer File System and PFSes"(PDF).BSD Magazine.8 (5). Warsaw, Poland: Hakin9 Media SK:18–23. Archived from the original on 27 May 2014. Retrieved2014-05-25.
  11. ^hammer(8) – DragonFly BSD System Maintenance and Operation CommandsManual
  12. ^Kemp, Juliet (4 August 2008)."Tip of the Trade: Dragonfly BSD and the Hammer Filesystem".ServerWatch. Archived fromthe original on 2014-05-27. Retrieved2014-05-26.
  13. ^Jeremy Andrews (2007-10-14)."HAMMER Performance".KernelTrap. Archived fromthe original on 2011-11-04. Retrieved2019-08-21.
  14. ^Dillon, Matthew (22 July 2011)."git: HAMMER VFS - Add code to reduce frontend vs flusher locking conflicts".commits (Mailing list).
  15. ^Matthew Dillon (2017-09-23)."hammer_disk.h".BSD Cross Reference.DragonFly BSD. Retrieved2019-03-06.
  16. ^Matthew Dillon (2018-05-05)."hammer2_disk.h".BSD Cross Reference.DragonFly BSD. Retrieved2019-03-06.
  17. ^Matthew Dillon (2017-03-27)."git: hammer - HAMMER Version 7".commits@DragonFly (Mailing list). Retrieved2019-03-06.

External links

[edit]
Operating system
OS-level virtualisation
File systems,storage
Firewalls,networking
Subsystems
People
Disk and
non-rotating
Optical disc
Flash memory andSSD
host-sidewear leveling
Distributed parallel
NAS
Specialized
Pseudo
Encrypted
Types
Features
Access control
Interfaces
Lists
Layouts
Retrieved from "https://en.wikipedia.org/w/index.php?title=HAMMER_(file_system)&oldid=1275938940"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp