Technique for quantifying logical space trapped in an extent store
First Claim
1. A system comprising:
- a central processing unit (CPU) adapted to execute a storage input/output (I/O) stack;
one or more solid state drives (SSDs) coupled to the CPU; and
a memory coupled to the CPU and configured to store the storage I/O stack and a multi-level dense tree metadata structure, wherein each level of the dense tree metadata structure includes entries for storing metadata having mappings from offset ranges of a logical unit (LUN) to extent keys associated with storage locations for extents stored on an extent store of the SSDs, wherein the storage I/O stack is configured to;
receive overlapping write requests directed to the LUN, the overlapping write requests representing overlapping offset ranges of the LUN, the overlapping offset ranges stored as overlapping entries of the dense tree metadata structure;
process the mappings of the overlapping entries to determine an offset range overlap of the overlapping entries per level; and
aggregate the offset range overlap of the overlapping entries between adjacent levels of the multi-level dense tree metadata structure to quantify trapped logical storage space in overlapping extents of the extent store due to the overlapping write requests.
0 Assignments
0 Petitions
Accused Products
Abstract
A technique quantifies logical storage space trapped in an extent store due to overlapping write requests associated with volume metadata managed by the volume layer. The volume metadata is illustratively organized as a multi-level dense tree metadata structure, wherein each level of the dense tree metadata structure (dense tree) includes volume metadata entries for storing the volume metadata. When a level of the dense tree is full, the volume metadata entries of the level are merged with a next lower level of the dense tree in accordance with a merge operation. Illustratively, the technique may be invoked during the merge operation to examine the volume metadata entries at each level of the dense tree involved in the merge and determine the LBA range overlap of the entries. To that end, the technique may include an algorithm configured to calculate the overlapping space per level and then aggregate the overlapping space of all levels involved in the merge operation to arrive at a result that quantifies the logical storage space trapped in the extent store.
-
Citations
20 Claims
-
1. A system comprising:
-
a central processing unit (CPU) adapted to execute a storage input/output (I/O) stack; one or more solid state drives (SSDs) coupled to the CPU; and a memory coupled to the CPU and configured to store the storage I/O stack and a multi-level dense tree metadata structure, wherein each level of the dense tree metadata structure includes entries for storing metadata having mappings from offset ranges of a logical unit (LUN) to extent keys associated with storage locations for extents stored on an extent store of the SSDs, wherein the storage I/O stack is configured to; receive overlapping write requests directed to the LUN, the overlapping write requests representing overlapping offset ranges of the LUN, the overlapping offset ranges stored as overlapping entries of the dense tree metadata structure; process the mappings of the overlapping entries to determine an offset range overlap of the overlapping entries per level; and aggregate the offset range overlap of the overlapping entries between adjacent levels of the multi-level dense tree metadata structure to quantify trapped logical storage space in overlapping extents of the extent store due to the overlapping write requests. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
storing a dense tree metadata structure in a memory coupled to a processor of a storage system, the dense tree metadata structure having multiple levels wherein each level of the dense tree metadata structure includes entries for storing metadata having mappings from offset ranges of a logical unit (LUN) to extent keys associated with storage locations for extents stored on an extent store of the storage system; receiving overlapping write requests directed to the LUN at the storage system, the overlapping write requests representing overlapping offset ranges of the LUN, the overlapping offset ranges stored as overlapping entries of the dense tree metadata structure; processing the mappings of the overlapping entries to determine an offset range overlap of the overlapping entries per level; and aggregating the offset range overlap of the overlapping entries between adjacent levels of the multi-level dense tree metadata structure to quantify trapped logical storage space in overlapping extents of the extent store due to the overlapping write requests. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer readable medium including program instructions for execution on a processor, the program instructions when executed configured to:
-
store a dense tree metadata structure in a memory coupled to the processor, the dense tree metadata structure having multiple levels wherein each level of the dense tree metadata structure includes entries for storing metadata having mappings from offset ranges of a logical unit (LUN) to extent keys associated with storage locations for extents stored on an extent store; receive overlapping write requests directed to the LUN, the overlapping write requests representing overlapping offset ranges of the LUN, the overlapping offset ranges stored as overlapping entries of the dense tree metadata structure; process the mappings of the overlapping entries to determine an offset range overlap of the overlapping entries per level; and aggregate the offset range overlap of the overlapping entries between adjacent levels of the multi-level dense tree metadata structure to quantify trapped logical storage space in overlapping extents of the extent store due to the overlapping write requests.
-
Specification