9323462

File System Snapshot Data Management in a Multi-Tier Storage Environment

PublishedApril 26, 2016
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for managing data, the method comprising: creating a second logical block on a multi-tier file system, the second logical block referencing data that is associated with a first logical block; determining a measure of access requests that will be directed to the data via the second logical block versus the first logical block; and transferring a proportion of a heatmap value for the data between the first logical block and the second logical block based on the measure of accesses that will be directed to the data via the second logical block versus the first logical block.

2

2. The method as recited in claim 1 , wherein the second logical block represents a snapshot copy of the data, and wherein the second logical block is created in response to receiving a request to modify the data after creation of the snapshot copy of the data.

3

3. The method as recited in claim 1 , wherein the second logical block is created according to copy-on-write processing, and further comprising sending the measure of access requests to an automatic tiering module, the automatic tiering module being configured to assign logical blocks to various tiers of the multi-tier file system.

4

4. The method as recited in claim 1 , wherein the determining the measure of access requests that will be directed to the data via the second logical block versus the first logical block comprises: receiving the measure of access requests from: a user who initiated creation of the snapshot or an application which initiated creation of the snapshot.

5

5. The method as recited in claim 1 , further comprising: determining an access request count for the first logical block based on the proportion of the heatmap value for the data that is to be directed to the first logical block; determining an access request count for the second logical block based on the proportion of the heatmap value for the data that is to be directed to the second logical block; and assigning the first logical block and/or the second logical block to an appropriate tier of the multi-tier file system according to the access request count for the first logical block and the access request count for the second logical block.

6

6. A computer program product for managing data, the computer program product comprising a computer readable storage medium having program code embodied therewith, the program code readable and/or executable by a processor to cause the processor to: receive, by the processor, a request to write data to a file block on a multi-tier file system, wherein a first logical block is associated with the file block; determine, by the processor, whether the request is a first write request for the file block after creation of a snapshot of the file block; when the request is the first write request for the file block after creation of the snapshot of the file block: create, by the processor, a second logical block according to copy-on-write processing; determine, by the processor, a measure of access requests to be directed to a logical block allocated for the snapshot versus a logical block allocated for new data on the file block, wherein the logical block allocated for the snapshot and the logical block allocated for new data on the file block are uniquely chosen from: the first logical block and the second logical block; determine, by the processor, whether to send the measure of access requests to an automatic tiering module; and send, by the processor, the measure of access requests to the automatic tiering module when dictated by the determination.

7

7. The computer program product as recited in claim 6 , wherein when the request is not the first write request for the file block after creation of the snapshot of the file block, normal write processing is performed.

8

8. The computer program product as recited in claim 6 , wherein the program code readable and/or executable by the processor to cause the processor to determine the measure of access requests to be directed to the logical block allocated for the snapshot versus the logical block allocated for new data on the file block is further configured to cause the processor to: receive the measure of access requests from: a user who initiated creation of the snapshot or an application which initiated creation of the snapshot.

9

9. The computer program product as recited in claim 6 , wherein the program code readable and/or executable by the processor further causes the processor to: receive the measure of access requests; determine an access request count for the first logical block prior to creation of the snapshot; determine whether all access requests are to be directed to the second logical block allocated for new data on the file block; when all access requests are to be directed to the second logical block allocated for new data on the file block: assign an access request count for the second logical block as the access request count for the first logical block; and reset the access request count for the first logical block; when not all access requests are to be directed to the second logical block allocated for new data on the file block: assign the access request count for the first logical block as a current access request count for the first logical block multiplied by the measure of access requests; and assign the access request count for the second logical block as the current access request count for the first logical block minus the access request count for the first logical block prior to creation of the snapshot.

10

10. The computer program product as recited in claim 9 , wherein the program code readable and/or executable by the processor to cause the processor to determine the access request count for the first logical block prior to creation of the snapshot is further configured to cause the processor to retrieve the access request count for the first logical block from a first storage construct accessible to the automatic tiering module.

11

11. The computer program product as recited in claim 9 , wherein the program code readable and/or executable by the processor further causes the processor to assign the first logical block and the second logical block to an appropriate tier of the multi-tier file system according to the access request count for the first logical block and the access request count for the second logical block.

12

12. The computer program product as recited in claim 9 , wherein when the first logical block currently resides in a higher tier of the multi-tier file system and when all access requests are to be directed to the second logical block allocated for new data on the file block, the program code readable and/or executable by the processor further causes the processor to evict the first logical block from the higher tier and reassign the first logical block to a lower tier.

13

13. The computer program product as recited in claim 6 , wherein the program code readable and/or executable by the processor further causes the processor to: create the snapshot of the file block in response to receiving a request to create the snapshot, wherein the request to create the snapshot comprises an access parameter, wherein the measure of access requests to be directed to the logical block allocated for the snapshot versus the logical block allocated for new data on the file block is determined based at least partially on the access parameter.

14

14. A system, comprising a processor and logic integrated with and/or executable by the processor, the logic being configured to: receive a request to write data to a file block on a multi-tier file system, wherein a first logical block is associated with the file block; determine whether the request is a first write request for the file block after creation of a snapshot of the file block; and when the request is the first write request for the file block after creation of the snapshot of the file block: create a second logical block according to copy-on-write processing; determine a measure of access requests to be directed to a logical block allocated for the snapshot versus a logical block allocated for new data on the file block, wherein the logical block allocated for the snapshot and the logical block allocated for new data on the file block are uniquely chosen from: the first logical block and the second logical block; determine whether to send the measure of access requests to an automatic tiering module; and send the measure of access requests to the automatic tiering module when dictated by the determination.

15

15. The system as recited in claim 14 , wherein when the request is not the first write request for the file block after creation of the snapshot of the file block, normal write processing is performed.

16

16. The system as recited in claim 14 , wherein the logic configured to determine the measure of access requests to be directed to the logical block allocated for the snapshot versus the logical block allocated for new data on the file block is further configured to: receive the measure of access requests from: a user who initiated creation of the snapshot or an application which initiated creation of the snapshot.

17

17. The system as recited in claim 16 , wherein the logic is further configured to: receive the measure of access requests; determine an access request count for the first logical block prior to creation of the snapshot; determine whether all access requests are to be directed to the second logical block allocated for new data on the file block; when all access requests are to be directed to the second logical block allocated for new data on the file block: assign an access request count for the second logical block as the access request count for the first logical block; and reset the access request count for the first logical block; when not all access requests are to be directed to the second logical block allocated for new data on the file block: assign the access request count for the first logical block as a current access request count for the first logical block multiplied by the measure of access requests; assign the access request count for the second logical block as the current access request count for the first logical block minus the access request count for the first logical block prior to creation of the snapshot; and when the first logical block currently resides in a higher tier of the multi-tier file system, evict the first logical block from the higher tier and reassign the first logical block to a lower tier.

18

18. The system as recited in claim 16 , wherein when the first logical block currently resides in a higher tier of the multi-tier file system and when all access requests are to be directed to the second logical block allocated for new data on the file block, the logic is further configured to evict the first logical block from the higher tier and reassign the first logical block to a lower tier.

19

19. The system as recited in claim 16 , wherein the logic configured to determine the access request count for the first logical block prior to creation of the snapshot is further configured to cause the processor to retrieve the access request count for the first logical block from a snapshot data table accessible to the automatic tiering module.

20

20. The system as recited in claim 16 , wherein the logic is further configured to: create the snapshot of the file block in response to receiving a request to create the snapshot, wherein the request to create the snapshot comprises an access parameter, wherein the measure of access requests to be directed to the logical block allocated for the snapshot versus the logical block allocated for new data on the file block is determined based at least partially on the access parameter; and assign the first logical block and the second logical block to an appropriate tier of the multi-tier file system according to the access request count for the first logical block and the access request count for the second logical block.

Patent Metadata

Filing Date

Unknown

Publication Date

April 26, 2016

Inventors

John T. Olson
Sandeep R. Patil
Riyazahamad M. Shiraguppi
Gail A. Spear

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “FILE SYSTEM SNAPSHOT DATA MANAGEMENT IN A MULTI-TIER STORAGE ENVIRONMENT” (9323462). https://patentable.app/patents/9323462

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.