Metadata for a grid based data storage system
First Claim
1. An apparatus comprising:
- a grouping of stripes of storage capacity across a plurality of storage domains, wherein same-size groupings define respective sheets of data storage capacity; and
a data structure, stored in a computer readable medium, that includes a table of values indexed by a sheet identifier, the data structure reflecting data transaction activity by identifying whether each of the respective sheets is allocated.
5 Assignments
0 Petitions
Accused Products
Abstract
Metadata architecture and associated methodology for a data storage system employing a grid-based storage capacity wherein each grid defines a storage unit in terms of a plurality of storage domains along one axis against one or more rows of a plurality of storage stripes along another axis, and wherein a grid grouping of two or more grids defines a sheet of data storage capacity. The metadata comprises identification information stored in a memory space characterizing an allocation status of the sheets in the storage capacity. A method is provided for allocating memory for the grid-based storage capacity comprising determining whether the allocation is associated with an existing logical device. If the determining step is associated with an existing logical device, then a logical device allocation map and a sheet allocation table are accessed to allocate a selected storage unit. Otherwise, a sheet allocation descriptor and a sheet allocation map are accessed to allocate a selected storage unit. A method is provided for transferring data for the grid-based storage capacity comprising accessing a logical device allocation map and a drive organization table to transfer data to or from a selected storage unit.
73 Citations
20 Claims
-
1. An apparatus comprising:
-
a grouping of stripes of storage capacity across a plurality of storage domains, wherein same-size groupings define respective sheets of data storage capacity; and a data structure, stored in a computer readable medium, that includes a table of values indexed by a sheet identifier, the data structure reflecting data transaction activity by identifying whether each of the respective sheets is allocated. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A data structure stored in a computer readable medium for a data storage system employing a grid-based storage capacity defining a storage unit in terms of a plurality of storage domains against one or more rows of a plurality of storage stripes, and groupings of two or more storage units defining respective sheets of data storage capacity arranged in a plurality of zones, the data structure comprising a sheet allocation map, characterized as a bit array associated with whether each of the sheets is allocatable, and a sheet allocation descriptor summarizing the sheet allocation map in terms of a number of allocatable sheets and a number of allocatable sheets per zone.
-
18. A data structure stored in a computer readable medium for a data storage system employing a grid-based storage capacity defining a storage unit in terms of a plurality of storage domains against one or more rows of a plurality of storage stripes, and groupings of two or more storage units defining respective sheets of data storage capacity, the data structure comprising indicia that identify whether each of the respective sheets of storage capacity are allocated in its entirety, and a storage unit descriptor that, for a selected storage unit, identifies:
- (a) a reference logical block address, (b) a book identification defining contributing storage domains of the plurality, (c) a unique storage unit number with respect to storage units in the same book, and (d) a redundant array of independent drives (RAID) level.
-
19. A data structure stored in a computer readable medium for a data storage system employing a grid-based storage capacity defining a storage unit in terms of a plurality of storage domains against one or more rows of a plurality of storage stripes, and groupings of two or more storage units defining respective sheets of data storage capacity, the data structure comprising:
-
indicia that identify whether each of the respective sheets of storage capacity are allocated in its entirety; a storage unit descriptor that, for a selected storage unit, identifies;
(a) a reference logical block address, (b) a book identification defining contributing storage domains of the plurality, (c) a unique storage unit number with respect to storage units in the same book, and (d) a drive organization defining an ordered scheme of implementing spare storage domains; anda drive organization table characterized by all permutations of book identifications, drive organizations, and sheet versions defining which storage domains are designated as spares.
-
-
20. A method comprising:
-
receiving an allocation request in a grid-based storage system in which a storage unit is defined by rows of a plurality of stripes of storage capacity across a plurality of storage domains, wherein groupings of same-size storage units define respective sheets of data storage capacity; and indexing a data structure, stored in memory, according to a sheet identifier to determine an allocation status of the respective sheet.
-
Specification