US 11,893,265 B2
Garbage collection for data storage
Konstantinos Nikoloudakis, San Francisco, CA (US); Sven Koehler, Sunnyvale, CA (US); Danyao Wang, Kitchener (CA); Sahand Saba, Kitchener (CA); Long Fei, Campbell, CA (US); Simon Tyler Wise, New Hamburg (CA); and David Halladay Schneider, Mountain View, CA (US)
Assigned to Google LLC, Mountain View, CA (US)
Filed by Google LLC, Mountain View, CA (US)
Filed on Mar. 26, 2022, as Appl. No. 17/656,645.
Application 17/656,645 is a continuation of application No. 16/838,627, filed on Apr. 2, 2020, granted, now 11,307,978.
Application 16/838,627 is a continuation of application No. 16/194,115, filed on Nov. 16, 2018, granted, now 10,621,079, issued on Apr. 14, 2020.
Application 16/194,115 is a continuation of application No. 15/614,871, filed on Jun. 6, 2017, granted, now 10,133,658, issued on Nov. 20, 2018.
Claims priority of application No. 20170100197 (GR), filed on May 2, 2017.
Prior Publication US 2023/0305733 A1, Sep. 28, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0652 (2013.01) [G06F 3/067 (2013.01); G06F 3/0608 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method when executed on data processing hardware of one or more server computers causes the data processing hardware to perform operations comprising:
receiving, from a user of a user device in communication with the one or more server computers:
a cost threshold representing a benefit of reclaiming storage space associated with each data object of a plurality of data objects associated with the user; and
a policy rule;
determining a threshold storage cost based on:
the cost threshold; and
an access window associated with each of the data objects of the plurality of data objects associated with the user, the access window having an expiration date in the future;
determining a future storage cost associated with a given data object of the plurality of data objects associated with the user;
determining whether the future storage cost associated with the given data object satisfies the threshold storage cost;
determining whether the policy rule applies to the given data object; and
after the expiration date of the access window of the given data object has expired and when the future storage cost associated with the given data object satisfies the threshold storage cost:
when the policy rule does not apply to the given data object, automatically deleting the given data object, and
when the policy rule does apply to the give data object, retaining the given data object.