A system for mapping between logical addresses and storage units of a
plurality of storage volumes which comprise a storage system. For each
volume, logical addresses are mapped to storage units using a volume
mapping table. Each volume mapping table is comprised of a plurality of
segments. Each segment need not be contiguously allocated to another
segment of the same table. Thus, each volume mapping table can be
independently expanded or reduced without affecting other volume mapping
tables. A hash function, a hash table, a segment table, and a redundancy
group descriptor table may also be used to help manage the segments of
the volume mapping tables.