摘要 |
Hash tables are used to index an internal database-one that resides in primary memory. The hash tables are segmented into a sequence of segments that increase geometrically in size. To expand a table, an additional segment is allocated which is twice as large as the previously allocated segment. This most recently allocated segment is referred to as an expansion segment, while the previously existing segments are referred to as base segments. As records are added, entries from the base segments are gradually split, and some of the records referenced by these entries are assigned to new entries in the expansion segment. This distributes address recalculations over time, while also using memory quite efficiently.
|