IP Library Granted Patent US 12,474,842
Granted Patent B2
US 12,474,842 · App. 17/644,085 · Granted Nov 18, 2025

Optimizing data placement based on data temperature and lifetime prediction

Inventors: Francisco Maturana Sanguineti (Mountain View, CA); Lluis Pamies-Juarez (Mountain View, CA); Mustafa Uysal (Mountain View, CA); Arif Abdulhusein Merchant (Los Altos, CA)
Assignee: Google LLC
G06F3/0616G06F3/0655G06F3/0659G06F3/067G06F3/0673G06N5/04
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,474,842
App. No.
17/644,085
Filed
Dec 13, 2021
Granted
Nov 18, 2025
Kind
B2
Examiner
HO, AARON D
Art Unit
2139
USPC
711/154
Abstract

A method for optimizing data storage includes obtaining a data object for storage at memory hardware in communication with data processing hardware. The memory hardware includes a plurality of storage devices, each storage device of the plurality of storage devices including storage parameters different from each other storage device of the plurality of storage devices. The method also includes determining one or more data object parameters associated with the data object and predicting, using a model and the data object parameters and the storage parameters, an object temperature representative of a frequency of access for the data object and an object lifetime representative of an amount of time the data object is to be stored. The method further includes selecting, using the predicted object temperature and object lifetime, one of the storage devices, and storing the data object at the selected one of the storage devices.

Claims (66)

1 . A computer-implemented method when executed by data processing hardware that causes the data processing hardware to perform operations comprising:

obtaining a data object for storage at memory hardware in communication with the data processing hardware, the memory hardware comprising a plurality of storage devices, each storage device of the plurality of storage devices comprising storage parameters different from each other storage device of the plurality of storage devices;

prior to storing the data object at the memory hardware:

determining one or more data object parameters associated with the data object;

predicting, using a model, based on the one or more data object parameters and the storage parameters of the plurality of storage devices:

an object temperature of the data object, the object temperature representative of a frequency of access for the data object; and

an object lifetime of the data object, the object lifetime representative of an amount of time the data object is to be stored; and

selecting, based on the predicted object temperature of the data object, the predicted object lifetime of the data object, and the storage parameters of the plurality of storage devices, one of the storage devices of the plurality of storage devices; and

storing the data object at the selected one of the storage devices.

2 . The method of claim 1 , wherein the storage parameters comprise at least one of:

a geographical location;

network connectivity;

input/output density; or

data erasure characteristics.

3 . The method of claim 1 , wherein the data object parameters comprise at least one of:

a data owner;

an object name;

an object size;

a creation time;

an object age; or

an object creation mechanism.

4 . The method of claim 1 , wherein predicting the object temperature and the object lifetime of the data object comprises classifying the data object using Bayesian Inference.

5 . The method of claim 1 , wherein predicting the object temperature and the object lifetime of the data object comprises generating a prediction using one of a machine learning classification algorithm or a machine learning regression algorithm.

6 . The method of claim 1 , wherein selecting the one of the storage devices of the plurality of storage devices comprises performing a cost-benefit analysis.

7 . The method of claim 6 , wherein the cost-benefit analysis comprises a per-byte cost of each storage device of the plurality of storage devices.

8 . The method of claim 1 , wherein the operations further comprise, after storing the data object at the selected one of the storage devices:

predicting, using updated data object parameters and the storage parameters:

an updated object temperature of the data object; and

an updated object lifetime of the data object; and

selecting, using the updated object temperature of the data object and the updated object lifetime of the data object, a second one of the storage devices of the plurality of storage devices.

9 . The method of claim 1 , where the operations further comprise, prior to predicting the object temperature of the data object and the object lifetime of the data object, training the model using historical temperature and lifetime training samples.

10 . The method of claim 9 , wherein the historical temperature and lifetime training samples are biased using a Kaplan-Meier estimator.

11 . A system comprising:

data processing hardware; and

memory hardware comprising a plurality of storage devices, each storage device of the plurality of storage devices comprising storage parameters different from each other storage device of the plurality of storage devices, the memory hardware in communication with the data processing hardware and storing instructions that, when executed on the data processing hardware, cause the data processing hardware to perform operations comprising:

obtaining a data object for storage at the memory hardware;

prior to storing the data object at the memory hardware:

determining one or more data object parameters associated with the data object;

predicting, using a model, based on the one or more data object parameters and the storage parameters of the plurality of storage devices:

an object temperature of the data object, the object temperature representative of a frequency of access for the data object; and

an object lifetime of the data object, the object lifetime representative of an amount of time the data object is to be stored; and

selecting, based on the predicted object temperature of the data object, the predicted object lifetime of the data object, and the storage parameters of the plurality of storage devices, one of the storage devices of the plurality of storage devices; and

storing the data object at the selected one of the storage devices.

12 . The system of claim 11 , wherein the storage parameters comprises at least one of:

a geographical location;

network connectivity;

input/output density; or

data erasure characteristics.

13 . The system of claim 11 , wherein the data object parameters comprise at least one of:

a data owner;

an object name;

an object size;

a creation time;

an object age; or

an object creation mechanism.

14 . The system of claim 11 , wherein predicting the object temperature and the object lifetime of the data object comprises classifying the data object using Bayesian Inference.

15 . The system of claim 11 , wherein predicting the object temperature and the object lifetime of the data object comprises generating a prediction using one of a machine learning classification algorithm or a machine learning regression algorithm.

16 . The system of claim 11 , wherein selecting the one of the storage devices of the plurality of storage devices comprises performing a cost-benefit analysis.

17 . The system of claim 16 , wherein the cost-benefit analysis comprises a per-byte cost of each storage device of the plurality of storage devices.

18 . The system of claim 11 , wherein the operations further comprise, after storing the data object at the selected one of the storage devices:

predicting, using updated data object parameters and the storage parameters:

an updated object temperature of the data object; and

an updated object lifetime of the data object; and

selecting, using the updated object temperature of the data object and the updated object lifetime of the data object, a second one of the storage devices of the plurality of storage devices.

19 . The system of claim 11 , where the operations further comprise, prior to predicting the object temperature of the data object and the object lifetime of the data object, training the model using historical temperature and lifetime training samples.

20 . The system of claim 19 , wherein the historical temperature and lifetime training samples are biased using a Kaplan-Meier estimator.

Assignments (2)
CONFIRMATORY LICENSE Recorded Jun 8, 2022
From: ALLIANCE FOR SUSTAINABLE ENERGY
To: UNITED STATES DEPARTMENT OF ENERGY
Reel/Frame 060134/0675 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2021
From: SANGUINETI, FRANCISCO MATURANA; PAMIES-JUAREZ, LLUIS; UYSAL, MUSTAFA; MERCHANT, ARIF ABDULHUSEIN
To: GOOGLE LLC
Reel/Frame 058394/0290 →
Continuity (1)
Related Publication 20230185457A1 · Jun 15, 2023
References Cited (26)
US 8352429B1 · Mamidi · 2013 [cited by examiner]
US 9684463B1 · Alshinnawi · 2017 [cited by examiner]
US 9912752B1 · Davis · 2018 [cited by examiner]
US 10095425B1 · Martin · 2018 [cited by applicant]
US 10353634B1 · Greenwood · 2019 [cited by examiner]
US 11137926B1 · Pendharkar · 2021 [cited by examiner]
US 11320986B2 · Ferreira · 2022 [cited by examiner]
US 20070239936A1 · Gluhovsky · 2007 [cited by examiner]
US 20120173831A1 · Rubio et al. · 2012 [cited by applicant]
US 20140195542A1 · Larson · 2014 [cited by examiner]
US 20140281158A1 · Ravimohan et al. · 2014 [cited by applicant]
US 20150088940A1 · Stokely · 2015 [cited by examiner]
US 20160364176A1 · Sun · 2016 [cited by examiner]
US 20170285967A1 · Pandurangan et al. · 2017 [cited by applicant]
US 20190205054A1 · Fujii · 2019 [cited by examiner]
US 20190233902A1 · Luo · 2019 [cited by examiner]
US 20200233598A1 · Bezugly · 2020 [cited by examiner]
US 20200233612A1 · Dalmatov · 2020 [cited by examiner]
US 20200326871A1 · Wu · 2020 [cited by examiner]
US 20210064456A1 · Shetty · 2021 [cited by examiner]
US 20210150379A1 · Wang · 2021 [cited by examiner]
US 20210240372A1 · Loh et al. · 2021 [cited by applicant]
US 20210241141A1 · Dugger · 2021 [cited by examiner]
US 20220083245A1 · Kant · 2022 [cited by examiner]
US 20230161488A1 · Fan · 2023 [cited by examiner]
International Search Report and Written Opinion relating to application PCT/US2022/081217, dated Apr. 13, 2023. [cited by applicant]