Snapshot management using heatmaps in a large capacity disk environment
AssigneeInternational Business Machines Corporation
InventorsSasikanth Eda, Shah M. R. Islam, John T. Olson, Sandeep R. Patil
Life of this patent
Estimating the term…
Abstract
A method, computer program product and/or system saves an original logical block in a file system and generates a first heatmap reflecting access operations on the original logical block. After taking of a file system snapshot, and receiving information that the original logical block is going to be revised, a second heatmap is generated, reflecting predicted access operations on the revised logical block. The second heatmap is based, at least in part, on the first heatmap. Selecting a physical storage location for the revised logical block is based on the second heatmap.
Claims10
A computer program product (CPP) comprising:
- a computer readable storage medium;
- and
- computer code stored on the computer readable storage medium, the computer code including data and instructions for causing a processor(s) set to perform at least the following operations:
- storing a first version of a first data block at a first physical location in a data storage system, with the first physical location corresponding to a first logical location;
- generating a first file block data set including information indicative of a pointer to the first logical location in the data storage system,
- generating a first heatmap value indicative of a number of accesses of the first data block,
- receiving a request to write additional data to create a second version of the first data block to the data storage system,
- responsive to the receipt of the request, predicting, by machine logic, a first proportion of future predicted accesses that will be made to the first version of the first data block;
- revising the first heatmap value to obtain a revised first heatmap value, with the revision of the first heatmap value being based upon the first proportion of future predicted accesses that will be made to the first version of the first data block;
- further responsive to the receipt of the request, predicting, by machine logic, a second proportion of future accesses that will be made to the second version of the first data block, and
- generating a second heatmap value indicative of a number of accesses of the first data block, with the second heatmap data set being based upon the first heatmap value and the second proportion of future accesses that will be made to the second version of the first data block.
A computer system (CS) comprising:
- a processor(s) set;
- a computer readable storage medium;
- and
- computer code stored on the computer readable storage medium, the computer code including data and instructions for causing the processor(s) set to perform at least the following operations:
- storing a first version of a first data block at a first physical location in a data storage system, with the first physical location corresponding to a first logical location;
- generating a first file block data set including information indicative of a pointer to the first logical location in the data storage system,
- generating a first heatmap value indicative of a number of accesses of the first data block,
- receiving a request to write additional data to create a second version of the first data block to the data storage system,
- responsive to the receipt of the request, predicting, by machine logic, a first proportion of future predicted accesses that will be made to the first version of the first data block;
- revising the first heatmap value to obtain a revised first heatmap value, with the revision of the first heatmap value being based upon the first proportion of future predicted accesses that will be made to the first version of the first data block;
- further responsive to the receipt of the request, predicting, by machine logic, a second proportion of future accesses that will be made to the second version of the first data block, and
- generating a second heatmap value indicative of a number of accesses of the first data block, with the second heatmap data set being based upon the first heatmap value and the second proportion of future accesses that will be made to the second version of the first data block.
Dependencies are inferred from the claim text.