Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

HTree

From Wikipedia, the free encyclopedia
(Redirected fromHtree)
Tree data structure for directory indexing
Not to be confused withH tree, a family of fractal sets.

This articlerelies excessively onreferences toprimary sources. Please improve this article by addingsecondary or tertiary sources.
Find sources: "HTree" – news ·newspapers ·books ·scholar ·JSTOR
(September 2013) (Learn how and when to remove this message)

AnHTree is a specializedtree data structure for directory indexing, similar to aB-tree. They are constant depth of either one or two levels, have a high fanout factor, use ahash of thefilename, and do not requirebalancing.[1] The HTree algorithm is distinguished from standard B-tree methods by its treatment ofhash collisions, which may overflow across multiple leaf and index blocks. HTreeindexes are used in theext3 andext4Linuxfilesystems, and were incorporated into theLinux kernel around 2.5.40.[2] HTree indexing improved the scalability ofLinux ext2 based filesystems from a practical limit of a few thousand files, into the range of tens of millions of files per directory.

History

[edit]

The HTree index data structure and algorithm were developed by Daniel Phillips in 2000 and implemented for the ext2 filesystem in February 2001. A port to the ext3 filesystem by Christopher Li andAndrew Morton in 2002 during the 2.5kernel series addedjournal based crash consistency. With minor improvements, HTree continues to be used in ext4 in the Linux 3.x.x kernel series.

Use

[edit]
  • ext2 HTree indexes were originally developed for ext2 but the patch never made it to the official branch. The dir_index feature can be enabled when creating an ext2 filesystem, but the ext2 code won't act on it.
  • ext3 HTree indexes are available in ext3 when the dir_index feature is enabled.
  • ext4 HTree indexes are turned on by default in ext4. This feature is implemented in Linux kernel 2.6.23. HTree indexes is also used for fileextents when a file needs more than the 4 extents stored in theinode. The large_dir feature of ext4 is implemented in Linux kernel 4.13.

PHTree

[edit]

PHTree (Physically stable HTree) is a derivation intended as a successor.[3][unreliable source?] It fixes all the known issues with HTree except for write multiplication.[citation needed] It is used in theTux3 filesystem.[4]

References

[edit]
  1. ^Mingming Cao."Directory indexing"(PDF).Features found in Linux 2.6.
  2. ^tytso@mit.edu."Add ext3 indexed directory (htree) support".
  3. ^"PHTree design refresh". 4 January 2013.
  4. ^"Tux3 Versioning Filesystem". Archived fromthe original on 13 January 2015. Retrieved28 December 2014.

External links

[edit]
Search trees
(dynamic sets/associative arrays)
Heaps
Tries
Spatial data partitioning trees
Other trees
Retrieved from "https://en.wikipedia.org/w/index.php?title=HTree&oldid=1153166547"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp