Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
158 words
A method for managing data in a storage system having a processor, memory, and at least one storage device, each storage device having an active region and an inactive region, wherein a plurality of data blocks are stored in each region, the method comprising the processor-executed steps of: designating a group of data blocks as a persistent data block group when at least one data block in the data block group was accessed from the storage device at least once per cycle for an active cycle threshold number of cycles out of a predetermined number of cycles, wherein each data block in a persistent data block group is designated as a persistent data block; at predetermined intervals, migrating at least one persistent data block, that is stored in the inactive region, to the active region; and at said predetermined intervals, migrating at least one non-persistent data block, that is stored in the active region, to the inactive region.
Claim 2
Independent Claim
158 words
A method for managing data in a storage system having a processor, memory, and at least one storage device, each storage device having an active region and an inactive region, wherein a plurality of data blocks are stored in each region, the method comprising the processor-executed steps of: designating a group of data blocks as a persistent data block group when at least one data block in the data block group was accessed from the storage device at least once per cycle for an active cycle threshold number of cycles out of a predetermined number of cycles, wherein each data block in a persistent data block group is designated as a persistent data block; at predetermined intervals, migrating at least one persistent data block, that is stored in the inactive region, to the active region; and at said predetermined intervals, migrating at least one non-persistent data block, that is stored in the active region, to the inactive region.
Claim 3
Dependent Claim
70 words
The method for managing data in a storage system as called for in claim 1 further comprising the steps of: determining whether a data block has been designated as a persistent data block when an update of the data block is to be written to the storage device, and writing the updated data block to the active region when the data block has been designated as a persistent data block.
Claim 4
Dependent Claim
60 words
The method for managing data in a storage system as called for in claim 1 further comprising the steps of: determining whether a data block has been designated as a persistent data block during garbage collection, and writing the data block to the active region during garbage collection when the data block has been designated as a persistent data block.
Claim 5
Independent Claim
298 words
A method for managing data in a storage system having a processor, memory, and at least one storage device, each storage device having an active region and an inactive region, wherein a plurality of active segments of data blocks are stored in the active region and a plurality of inactive segments of data blocks are stored in the inactive region, the method comprising the steps of: monitoring persistent read activity for the data blocks such that each data block can be designated as either a persistent data block or a non-persistent data block; when an update of a data block is to be written to the storage devices, determining whether the data block has been designated as a persistent data block or a non-persistent data block such that the updated persistent data block is written as part of an active segment in the active region and the updated non-persistent data block is written as part of an inactive segment in the inactive region; at a first predetermined interval, selecting an inactive set of inactive segments stored in the inactive region for data block migration, each inactive segment in said inactive set having at least one persistent data block; at the first predetermined interval, selecting an active set of active segments stored in the active region for data block migration, each active segment in said active set having at least one non-persistent data block; at a second predetermined interval, migrating said at least one persistent data block from the inactive set of inactive segments to the active set of active segments stored in the active region; and at the second predetermined interval, migrating said at least one non-persistent data block from the active set of active segments to the inactive set of inactive segments stored in the inactive region.
Claim 6
Independent Claim
298 words
A method for managing data in a storage system having a processor, memory, and at least one storage device, each storage device having an active region and an inactive region, wherein a plurality of active segments of data blocks are stored in the active region and a plurality of inactive segments of data blocks are stored in the inactive region, the method comprising the steps of: monitoring persistent read activity for the data blocks such that each data block can be designated as either a persistent data block or a non-persistent data block; when an update of a data block is to be written to the storage devices, determining whether the data block has been designated as a persistent data block or a non-persistent data block such that the updated persistent data block is written as part of an active segment in the active region and the updated non-persistent data block is written as part of an inactive segment in the inactive region; at a first predetermined interval, selecting an inactive set of inactive segments stored in the inactive region for data block migration, each inactive segment in said inactive set having at least one persistent data block; at the first predetermined interval, selecting an active set of active segments stored in the active region for data block migration, each active segment in said active set having at least one non-persistent data block; at a second predetermined interval, migrating said at least one persistent data block from the inactive set of inactive segments to the active set of active segments stored in the active region; and at the second predetermined interval, migrating said at least one non-persistent data block from the active set of active segments to the inactive set of inactive segments stored in the inactive region.
Claim 7
Dependent Claim
79 words
The method for managing data in a storage system as called for in claim 4, wherein each inactive segment in the inactive set of segments selected for data block migration has a fraction of persistent data blocks exceeding a persistence threshold, and the active segments in the active set of segments selected for data block migration are selected based on the total size of the persistent data blocks in the inactive set of segments selected for data block migration.
Claim 8
Dependent Claim
71 words
The method for managing data in a storage system as called for in claim 4 further comprising the step of: for each segment, storing in memory, a segment persistence fraction representing the number of persistent data blocks in the segment divided by the total number of data blocks in the segment, and wherein the active and inactive sets of segments are selected by examining the segment persistence fraction for each segment.
Claim 9
Dependent Claim
42 words
The method for managing data in a storage system as called for in claim 4, wherein the storage system manages data as a log structured array, each data block is a logical track, and each data block group is a logical cylinder.
Claim 10
Dependent Claim
150 words
A computerized storage system for managing the storage of data in a log structured array, comprising: at least one storage device having an active region and an inactive region, wherein a plurality of segments of data blocks are stored in each region; a persistence indicator stored in memory, tracking persistent read activity over a plurality of cycles for designating each data block as a persistent data block or a non-persistent data block; and a segment persistence fraction, stored in memory, for each segment, representing the number of persistent data blocks in the segment relative the total number of data blocks in the segment, and wherein at least one non-persistent data block in an active segment, stored in the active region, having a segment persistence fraction over a first predetermined threshold, is migrated to an inactive segment, stored in the inactive region, having a segment persistence fraction over a predetermined threshold.
Claim 11
Dependent Claim
150 words
A computerized storage system for managing the storage of data in a log structured array, comprising: at least one storage device having an active region and an inactive region, wherein a plurality of segments of data blocks are stored in each region; a persistence indicator stored in memory, tracking persistent read activity over a plurality of cycles for designating each data block as a persistent data block or a non-persistent data block; and a segment persistence fraction, stored in memory, for each segment, representing the number of persistent data blocks in the segment relative the total number of data blocks in the segment, and wherein at least one non-persistent data block in an active segment, stored in the active region, having a segment persistence fraction over a first predetermined threshold, is migrated to an inactive segment, stored in the inactive region, having a segment persistence fraction over a predetermined threshold.
Claim 12
Dependent Claim
65 words
The storage system as called for in claim 8 further comprising: a determination means for determining whether a data block is persistent or non-persistent when an updated data block is to be written to the storage device; and a writing means for writing an updated persistent data block to the active region of the disk and an updated non-persistent data block to the inactive region.
Claim 13
Dependent Claim
53 words
The storage system as called for in claim 8 further comprising: a determination means for determining whether a data block is persistent or non-persistent during garbage collection; and a writing means for writing a persistent data block to the active region and a non-persistent data block to the inactive region during garbage collection.
Claim 14
Dependent Claim
92 words
The storage system as called for in claim 9 further comprising: means for selecting, at predetermined intervals, an inactive set of segments stored in the inactive region having a fraction of data persistent blocks exceeding a first threshold; and means for selecting, at predetermined intervals, an active set of segments stored in the active region, wherein each segment in the active set of segments is selected based on the number of segments in the inactive set of segments and the average fraction of persistent data blocks in the inactive set of segments.
Claim 15
Dependent Claim
87 words
The storage system as called for in claim 8, wherein said persistence indicator comprises a data block group indicator for each of a plurality of data block groups indicating whether at least one read miss occurred within a cycle for each of a predetermined number of cycles for at least one of the data blocks in the data block group, wherein the data block group is determined to have persistent data if the number of cycles having at least one read miss exceeds an active cycle threshold.
Claim 16
Dependent Claim
176 words
An article of manufacture for use in storing and managing data in a computer system, the computer system having at least one storage device having an active region and an inactive region and means for writing a plurality of segments of data blocks to the storage device, said article of manufacture having a computer program code embodied in said medium which may cause the computer to: (a) designate a group of data blocks as a persistent data block group when at least one read miss has occurred for at least one data block in the data block group for an active cycle threshold number of cycles out of a predetermined number of cycles, wherein each data block in a persistent data block group is designated as a persistent data block; (b) at predetermined intervals, migrate at least one persistent data block, that is stored in the inactive region, to the active region; and (c) at said predetermined intervals, migrate at least one non-persistent data block, that is stored in the active region, to the inactive region.
Claim 17
Dependent Claim
176 words
An article of manufacture for use in storing and managing data in a computer system, the computer system having at least one storage device having an active region and an inactive region and means for writing a plurality of segments of data blocks to the storage device, said article of manufacture having a computer program code embodied in said medium which may cause the computer to: (a) designate a group of data blocks as a persistent data block group when at least one read miss has occurred for at least one data block in the data block group for an active cycle threshold number of cycles out of a predetermined number of cycles, wherein each data block in a persistent data block group is designated as a persistent data block; (b) at predetermined intervals, migrate at least one persistent data block, that is stored in the inactive region, to the active region; and (c) at said predetermined intervals, migrate at least one non-persistent data block, that is stored in the active region, to the inactive region.
Claim 18
Dependent Claim
68 words
The article of manufacture as claimed in claim 13, wherein the program code may cause the computer to: determine whether a data block has been designated as a persistent data block when an update of the data block is to be written to the storage device, and write the updated data block to the active region when the data block has been designated as a persistent data block.
Claim 19
Dependent Claim
58 words
The article of manufacture as claimed in claim 13, wherein the program code may cause the computer to: determine whether a data block has been designated as a persistent data block during garbage collection, and write the data block to the active region during garbage collection when the data block has been designated as a persistent data block.
Claim 20
Dependent Claim
121 words
The article of manufacture as claimed in claim 13, wherein the program code may cause the computer to: at said predetermined intervals, select an inactive set of inactive segments stored in the inactive region for data block migration, each segment in said inactive set having at least one persistent data block; and at said predetermined intervals, select an active set of active segments stored in the active region for data block migration, each segment in said active set having at least one non-persistent data block, wherein said at least one persistent data block that is migrated is in said inactive set of segments and said at least one non-persistent data block that is migrated is in said active set of segments.
Claim 21
Dependent Claim
73 words
The article of manufacture as claimed in claim 16, wherein each inactive segment in the inactive set of segments selected for data block migration has a fraction of persistent data blocks exceeding a persistence threshold, and the active segments in the active set of segments selected for data block migration are selected based on the total size of the persistent data blocks in the inactive set of segments selected for data block migration.
Claim 22
Dependent Claim
70 words
The article of manufacture as claimed in claim 13, wherein the program code may further cause the computer to: for each segment, stored in memory, a segment persistence fraction representing the number of persistent data blocks in the segment divided by the total number of data blocks in the segment, and wherein the active and inactive sets of segments are selected by examining the segment persistence fraction for each segment.