IP Library › Granted Patent US 12,405,743
Granted Patent B2
US 12,405,743 · App. 18/507,668 · Granted Sep 2, 2025

Hinting information for selecting a storage location for a dataset

Inventors: Beth Ann Peterson (Tucson, AZ); Clint A. Hardy (Tucson, AZ); Matthew G. Borlick (Tucson, AZ); Lokesh Mohan Gupta (Tucson, AZ)
Assignee: International Buseness Machines Corporation
G06F3/065G06F3/0604G06F3/0683
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,405,743
App. No.
18/507,668
Granted
Sep 2, 2025
Kind
B2
Abstract

Described are techniques for selecting compressed or non-compressed data storage using hints for a dataset. The techniques include receiving a dataset at a data storage system that manages storage location on compressed data storage and non-compressed data storage. The techniques further include determining, by the data storage system, that the dataset includes one or more hints for selecting a storage location for the dataset from one of the storage locations managed by the data storage system. The techniques further include selecting, by the data storage system, the storage location for the dataset based in part on the one or more hints and storing the dataset to the storage location.

Claims (45)

1. A computer-implemented method comprising:

receiving a dataset at a data storage system that manages storage locations on compressed data storage and non-compressed data storage;

determining, by the data storage system, that a storage state of the data storage system allows using hint analysis for selecting a storage location for the dataset;

determining, by the data storage system, that the dataset includes one or more hints for selecting the storage location for the dataset from one of the storage locations managed by the data storage system;

selecting, by the data storage system, the storage location for the dataset based in part on the one or more hints; and

storing, by the data storage system, the dataset to the storage location selected by the data storage system.

2. The computer-implemented method of claim 1 , wherein the dataset and the one or more hints are received from an application that, prior to sending the dataset to the data storage system, generates the one or more hints to assist the data storage system in selecting the storage location for the dataset.

3. The computer-implemented method of claim 1 , wherein determining the storage state of the storage system further comprises evaluating states of the compressed data storage and the non-compressed data storage to determine whether the states of the compressed data storage and the non-compressed data storage allow selection of the storage location based in part on the one or more hints.

4. The computer-implemented method of claim 1 , wherein a hint of the one or more hints indicates a compression state of the dataset.

5. The computer-implemented method of claim 1 , wherein a hint of the one or more hints indicates a compressibility of the dataset.

6. The computer-implemented method of claim 1 , wherein a hint of the one or more hints indicates an encryption state of the dataset.

7. The computer-implemented method of claim 1 , wherein a hint of the one or more hints indicates how the dataset is used by an application.

8. The computer-implemented method of claim 7 , wherein selecting the storage location further comprises:

selecting the compressed data storage when the one or more hints indicates one or more selected from a group consisting of: the dataset is highly compressible, the dataset is expected to be accessed infrequently by the application, and the dataset is expected to not be accessed by the application; and

selecting the non-compressed data storage when the one or more hints indicates one or more selected from a group consisting of: the dataset is compressed, the dataset is encrypted, the dataset has low compressibility, the dataset is expected to be written frequently by the application, and the dataset is expected to be read frequently by the application.

9. The computer-implemented method of claim 1 , wherein selecting the storage location further comprises evaluating performance metrics of the data storage system with the one or more hints to identify the storage location.

10. A system comprising:

one or more computer readable storage media storing program instructions and one or more processors which, in response to executing the program instructions, are configured to:

receive a dataset at a data storage system that manages storage locations on compressed data storage and non-compressed data storage;

determine, by the data storage system, that a storage state of the data storage system allows using hint analysis for selecting a storage location for the dataset;

determine, by the data storage system, that the dataset includes one or more hints for selecting a storage location for the dataset from one of the storage locations managed by the data storage system;

select, by the data storage system, the storage location for the dataset based in part on the one or more hints; and

store, by the data storage system, the dataset to the storage location selected by the data storage system.

11. The system of claim 10 , wherein the program instructions configured to cause the one or more processors to determine the storage state of the storage system are further configured to cause the one or more processors to:

evaluate states of the compressed data storage and the non-compressed data storage to determine whether the states of the compressed data storage and the non-compressed data storage allow selection of the storage location based in part on the one or more hints.

12. The system of claim 10 , wherein the dataset and the one or more hints are received from an application that, prior to sending the dataset to the data storage system, generates the one or more hints to assist the data storage system in selecting the storage location for the dataset.

13. The system of claim 11 , wherein a hint of the one or more hints indicates one from a group consisting of: a compression state of the dataset, a compressibility of the dataset, an encryption state of the dataset, and how the dataset is used by an application.

14. The system of claim 11 , wherein the program instructions configured to cause the one or more processors to select the storage location are further configured to cause the one or more processors to:

select the compressed data storage when the one or more hints indicates one or more selected from a group consisting of: the dataset is highly compressible, the dataset is expected to be accessed infrequently by an application, and the dataset is expected to not be accessed by the application; and

select the non-compressed data storage when the one or more hints indicates one or more selected from a group consisting of: the dataset is compressed, the dataset is encrypted, the dataset has low compressibility, the dataset is expected to be written frequently by the application, and the dataset is expected to be read frequently by the application.

15. The system of claim 11 , wherein the program instructions configured to cause the one or more processors to select the storage location are further configured to cause the one or more processors to:

evaluate performance metrics of the data storage system with the one or more hints to identify the storage location.

16. A computer program product comprising:

one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions configured to cause one or more processors to:

receive a dataset at a data storage system that manages storage locations on compressed data storage and non-compressed data storage;

determine, by the data storage system, that a storage state of the data storage system allows using hint analysis for selecting a storage location for the dataset;

determine, by the data storage system, that the dataset includes one or more hints for selecting a storage location for the dataset from one of the storage locations managed by the data storage system;

select, by the data storage system, the storage location for the dataset based in part on the one or more hints; and

store, by the data storage system, the dataset to the storage location selected by the data storage system.

17. The computer program product of claim 16 , wherein the program instructions configured to cause the one or more processors to determine the storage state of the storage system are further configured to cause the one or more processors to:

evaluate states of the compressed data storage and the non-compressed data storage to determine whether the states of the compressed data storage and the non-compressed data storage allow selection of the storage location based in part on the one or more hints.

18. The computer program product of claim 16 , wherein the dataset and the one or more hints are received from an application that, prior to sending the dataset to the data storage system, generates the one or more hints to assist the data storage system in selecting the storage location for the dataset.

19. The computer program product of claim 18 , wherein a hint of the one or more hints indicates one from a group consisting of: a compression state of the dataset, a compressibility of the dataset, an encryption state of the dataset, and how the dataset is used by the application.

20. The computer program product of claim 18 , wherein the program instructions configured to cause the one or more processors to select the storage location are further configured to cause the one or more processors to:

evaluate performance metrics of the data storage system with the one or more hints to identify the storage location.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2023
From: PETERSON, BETH ANN; HARDY, CLINT A.; BORLICK, MATTHEW G.; GUPTA, LOKESH MOHAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 065543/0517 →
Continuity (1)
Related Publication 20250156102A1 · May 15, 2025
References Cited (16)
US 7043619B1 · Knight · 2006 [cited by examiner]
US 7190284B1 · Dye · 2007 [cited by applicant]
US 10116329B1 · Bigman · 2018 [cited by applicant]
US 11144454B2 · Guyer · 2021 [cited by applicant]
US 11226774B2 · Vankamamidi · 2022 [cited by applicant]
US 11423158B2 · Borlick · 2022 [cited by examiner]
US 11533063B2 · Martin · 2022 [cited by applicant]
US 11561695B1 · Guyer · 2023 [cited by applicant]
US 20040054858A1 · Chandrasekaran · 2004 [cited by examiner]
US 20090070356A1 · Mimatsu · 2009 [cited by examiner]
US 20090100195A1 · Barsness · 2009 [cited by applicant]
US 20120166748A1 · Satoyama · 2012 [cited by examiner]
US 20130024432A1 · Pendharkar · 2013 [cited by examiner]
US 20170039000A1 · Feng · 2017 [cited by examiner]
US 20190065788A1 · Vijayasankar · 2019 [cited by examiner]
US 20220179570A1 · Thakkar · 2022 [cited by examiner]