Surface-based logical storage units in multi-platter disks
AssigneeAmazon Technologies, Inc.
InventorJames Christopher Sorenson, III
Life of this patent
Estimating the term…
Abstract
Techniques for treating surfaces of a multi-platter disk as independent units are described herein. Each surface of a plurality of surfaces of a multi-platter disk is identified and a set of storage layout data describing the storage format of the surface is received. A logical address is calculated based on the surface layout data and at least a portion of the storage layout data is stored on the surface. The logical address of the surface is then provided for use by other services.
Claims20
A computer-implemented method, comprising:
- determining a set of usable surfaces of a multi-platter disk, each usable surface of the set of usable surfaces configured to store data;
- for each usable surface of the set of usable surfaces:
- receiving a set of corresponding surface layout data that describes an arrangement of a plurality of logical blocks on the usable surface;
- calculating a logical unit number, the logical unit number based at least in part on the set of corresponding surface layout data, the logical unit number uniquely associated with the usable surface;
- adding the logical unit number to a set of logical unit numbers;
- formatting the usable surface based at least in part on the set of corresponding surface layout data;
- and
- storing at least a subset of the corresponding surface layout data on the usable surface;
- detecting a failed surface of the set of usable surfaces;
- removing the failed surface from the set of usable surfaces;
- and
- removing the logical unit number corresponding to the failed surface from the set of logical unit numbers.
A system, comprising:
- one or more processors;
- and
- memory including executable instructions that, if executed by the one or more processors, cause the system to at least:
- associate each subset of a plurality of subsets of a set of surfaces of a multi-platter disk with a corresponding different logical device address of a set of logical device addresses, each surface of the set of surfaces storing a set of surface layout data that specifies an arrangement of a plurality of logical blocks on the surface;
- receive an access request that includes a selected logical device address of the set of logical device addresses that corresponds to a subset of the set of surfaces;
- and
- cause the access request to be performed by interacting with a surface of the subset corresponding to the selected logical device address of the access request.
A non-transitory computer-readable storage medium comprising executable instructions that, as a result of execution by one or more processors of a computer system, cause the computer system to at least:
- for each subset of a plurality of subsets of a set of surfaces:
- store a set of surface layout data on a first set of one or more surfaces of the subset of the plurality of subsets of the set of surfaces, the set of surface layout data describing a storage format that indicates an arrangement of a plurality of logical blocks on the subset of the plurality of subsets of the set of surfaces;
- and
- determine a logical device address for the subset of the plurality of subsets of the set of surfaces, the logical device address based at least in part on the surface layout data;
- receive an access request that specifies the logical device address;
- and
- as a result of the access request specifying the logical device address, use a second set of one or more surfaces of the subset of the plurality of subsets of the set of surfaces to fulfill the access request.
Dependencies are inferred from the claim text.