Checkpointing of metadata into user data area of a content addressable storage system
First Claim
1. An apparatus comprising:
- a storage system comprising a plurality of storage devices and an associated storage controller;
the storage devices being configured to provide a metadata area and a user data area, the user data area being separated into pages;
the storage controller being configured to initiate generation of one or more checkpoints in the storage system;
wherein in conjunction with the generation of a given one of the one or more checkpoints in the storage system, the storage controller causes checkpointed metadata from the metadata area to be stored in the user data area;
wherein the storage controller further stores mapping information relating portions of the checkpointed metadata to respective pages of the user data area that store those portions of the checkpointed metadata, the mapping information comprising;
a plurality of page location arrays each having a plurality of entries specifying respective locations of checkpointed metadata pages in the user data area; and
one or more array location arrays each indexed by a corresponding set of page location array identifiers specifying respective locations of page location arrays in the user data area;
wherein the storage controller is implemented using at least one processing device comprising a processor coupled to a memory.
7 Assignments
0 Petitions
Accused Products
Abstract
An apparatus in one embodiment comprises a storage system having a plurality of storage devices and an associated storage controller. The storage devices are configured to provide a metadata area and a user data area, the user data area being separated into pages. The storage controller is configured to initiate generation of one or more checkpoints in the storage system. In conjunction with the generation of a given one of the one or more checkpoints in the storage system, the storage controller causes checkpointed metadata from the metadata area to be stored in the user data area. The storage controller further stores mapping information relating portions of the checkpointed metadata to respective pages of the user data area that store those portions of the checkpointed metadata. The mapping information illustratively comprises page location arrays and array location arrays, and in some embodiments further comprises one or more higher-level location arrays.
-
Citations
20 Claims
-
1. An apparatus comprising:
-
a storage system comprising a plurality of storage devices and an associated storage controller; the storage devices being configured to provide a metadata area and a user data area, the user data area being separated into pages; the storage controller being configured to initiate generation of one or more checkpoints in the storage system; wherein in conjunction with the generation of a given one of the one or more checkpoints in the storage system, the storage controller causes checkpointed metadata from the metadata area to be stored in the user data area; wherein the storage controller further stores mapping information relating portions of the checkpointed metadata to respective pages of the user data area that store those portions of the checkpointed metadata, the mapping information comprising; a plurality of page location arrays each having a plurality of entries specifying respective locations of checkpointed metadata pages in the user data area; and one or more array location arrays each indexed by a corresponding set of page location array identifiers specifying respective locations of page location arrays in the user data area; wherein the storage controller is implemented using at least one processing device comprising a processor coupled to a memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
configuring storage devices of a storage system to provide a metadata area and a user data area, the user data area being separated into pages; initiating generation of one or more checkpoints in the storage system; and in conjunction with the generation of a given one of the one or more checkpoints in the storage system; storing checkpointed metadata from the metadata area in the user data area; and storing mapping information relating portions of the checkpointed metadata to respective pages of the user data area that store those portions of the checkpointed metadata, the mapping information comprising; a plurality of page location arrays each having a plurality of entries specifying respective locations of checkpointed metadata pages in the user data area; and one or more array location arrays each indexed by a corresponding set of page location array identifiers specifying respective locations of page location arrays in the user data area; wherein the method is implemented by at least one processing device comprising a processor coupled to a memory. - View Dependent Claims (16, 17)
-
-
18. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device:
-
to configure storage devices of a storage system to provide a metadata area and a user data area, the user data area being separated into pages; to initiate generation of one or more checkpoints in the storage system; and in conjunction with the generation of a given one of the one or more checkpoints in the storage system; to store checkpointed metadata from the metadata area in the user data area; and to store mapping information relating portions of the checkpointed metadata to respective pages of the user data area that store those portions of the checkpointed metadata, the mapping information comprising; a plurality of page location arrays each having a plurality of entries specifying respective locations of checkpointed metadata pages in the user data area; and one or more array location arrays each indexed by a corresponding set of page location array identifiers specifying respective locations of page location arrays in the user data area. - View Dependent Claims (19, 20)
-
Specification