IP Library › Granted Patent US 12,210,765
Granted Patent B2
US 12,210,765 · App. 17/900,337 · Granted Jan 28, 2025

Optimizing data deletion settings in a storage system

Inventors: Prabir Paul (San Jose, CA); Chia-Chun Lin (Cupertino, CA); Vijayan Satyamoorthy Srinivasa (San Jose, CA)
Assignee: Pure Storage, Inc.
G06F3/0652G06F3/0604G06F3/064G06F3/0679
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,210,765
App. No.
17/900,337
Filed
Aug 31, 2022
Granted
Jan 28, 2025
Kind
B2
Art Unit
2137
USPC
711/154
Abstract

An example method for optimizing data deletion in a storage system comprises: monitoring one or more attributes associated with a storage volume associated with a file system; and setting, based on the monitoring of the one or more attributes, a discard option to be either enabled or disabled for the storage volume, wherein when the discard option is enabled, the file system is configured to automatically issue a discard request in response to a request to delete data stored on one or more blocks within a storage device associated with the storage volume, the discard request configured to command the storage device to free the one or more blocks for use by the file system to store additional data; and when the discard option is disabled, the file system does not automatically issue the discard request in response to the request to delete the data.

Claims (68)

1. A method comprising:

monitoring, by a storage management system configured to provide a first storage volume and a second storage volume to a file system separate from the storage management system, one or more first attributes associated with the first storage volume;

monitoring, by the storage management system, one or more second attributes associated with the second storage volume;

setting, by the storage management system and based on the monitoring of the one or more first attributes, a first discard option to be enabled for the first storage volume;

setting, by the storage management system and based on the monitoring of the one or more second attributes a second discard option to be disabled for the second storage volume;

detecting, by the storage management system, a first request to delete data stored on one or more first blocks within a first storage device associated with the first storage volume;

detecting, by the storage management system, a first discard request automatically issued, based on the first discard option being enabled, by the file system in response to the first request to delete data, the first discard request commanding the first storage device to free the one or more first blocks for use by the file system to store additional data;

detecting, by the storage management system, a second request to delete data stored on one or more second blocks with a second storage device associated with the second storage volume; and

initiating, by the storage management system in response to the second request to delete data and based on both the second discard option being disabled and a load metric associated with the second storage volume, a second discard request to the second storage device.

2. The method of claim 1 , wherein the one or more second attributes comprises one or more attributes associated with an application utilizing the second storage volume.

3. The method of claim 2 , wherein the one or more attributes associated with the application comprises a type of the application.

4. The method of claim 3 , wherein:

the one or more attributes associated with the application comprises a typical ratio of delete requests to write requests issued by the type of application; and

the setting the second discard option to be disabled is based on the typical ratio of delete requests to write requests meeting a threshold ratio.

5. The method of claim 3 , wherein:

the monitoring the one or more second attributes comprises monitoring an actual ratio delete requests to write requests issued by the application; and

the setting the second discard option to be disabled is based on the actual ratio of delete requests to write requests meeting a threshold ratio.

6. The method of claim 5 , further comprising adjusting an initial setting of the second discard option for the type of application based on the actual ratio of delete requests to write requests issued by the application.

7. The method of claim 1 , wherein:

the one or more second attributes associated with the second storage volume comprises a metric indicating a ratio of delete requests to write requests received by the second storage volume; and

the setting the second discard option to be disabled is based on the metric meeting a threshold metric.

8. The method of claim 1 , wherein:

the one or more second attributes associated with the second storage volume comprises a type of the second storage device associated with the second storage volume; and

the setting the second discard option to be disabled is based on the type of the second storage device being a solid-state based storage device.

9. The method of claim 1 , wherein the monitoring the one or more first attributes and the monitoring the one or more second attributes are performed by a container storage management system.

10. A system comprising:

one or more memories storing computer-executable instructions; and

one or more processors to execute the computer-executable instructions to:

provide a first storage volume and a second storage volume to a file system;

monitor one or more first attributes associated with the first storage volume;

monitor one or more second attributes associated with the first second volume;

set, based on the monitoring of the one or more first attributes, a first discard option to be enabled for the first storage volume;

set, based on the monitoring of the one or more second attributes a second discard option to be disabled for the second storage volume;

detect a first request to delete data stored on one or more first blocks within a first storage device associated with the first storage volume;

detect a first discard request automatically issued, based on the first discard option being enabled, by the file system in response to the first request to delete data, the first discard request commanding the first storage device to free the one or more first blocks for use by the file system to store additional data;

detect a second request to delete data stored on one or more second blocks with a second storage device associated with the second storage volume; and

initiate, in response to the second request to delete data and based on both the second discard option being disabled and a load metric associated with the second storage volume, a second discard request to the second storage device.

11. The system of claim 10 , wherein the one or more second attributes comprises one or more attributes associated with an application utilizing the second storage volume.

12. The system of claim 11 , wherein the one or more attributes associated with the application comprises a type of the application.

13. The system of claim 12 , wherein:

the one or more attributes associated with the application comprises a typical ratio of delete requests to write requests issued by the type of application; and

the setting the second discard option to be disabled is based on the typical ratio of delete requests to write requests meeting a threshold ratio.

14. The system of claim 12 , wherein:

the monitoring the one or more second attributes comprises monitoring an actual ratio of delete requests to write requests issued by the application; and

the setting the second discard option to be disabled is based on the actual ratio of delete requests to write requests meeting a threshold ratio.

15. The system of claim 14 , further comprising adjusting an initial setting of the second discard option for the type of application based on the actual ratio of delete requests to write requests issued by the application.

16. The system of claim 10 , wherein:

the one or more second attributes associated with the second storage volume comprises a metric indicating a ratio of delete requests to write requests received by the second storage volume; and

the setting the second discard option to be disabled is based on the metric meeting a threshold metric.

17. The system of claim 10 , wherein:

the one or more second attributes associated with the second storage volume comprises a type of the second storage device associated with the second storage volume; and

the setting the second discard option to be disabled is based on the type of the second storage device being a solid-state based storage device.

18. A non-transitory, computer-readable medium storing computer instructions that, when executed, direct one or more processors of one or more computing devices to:

provide a first storage volume and a second storage volume to a file system;

monitor one or more first attributes associated with the first storage volume;

monitor one or more second attributes associated with the first second volume;

set, based on the monitoring of the one or more first attributes, a first discard option to be enabled for the first storage volume;

set, based on the monitoring of the one or more second attributes a second discard option to be disabled for the second storage volume;

detect a first request to delete data stored on one or more first blocks within a first storage device associated with the first storage volume;

detect a first discard request automatically issued, based on the first discard option being enabled, by the file system in response to the first request to delete data, the first discard request commanding the first storage device to free the one or more first blocks for use by the file system to store additional data;

detect a second request to delete data stored on one or more second blocks with a second storage device associated with the second storage volume; and

initiate, in response to the second request to delete data and based on both the second discard option being disabled and a load metric associated with the second storage volume, a second discard request to the second storage device.

19. The computer-readable medium of claim 18 , wherein:

the one or more second attributes comprises a typical ratio of delete requests to write requests issued by a type of an application utilizing the second storage volume; and

the setting the second discard option to be disabled is based on the typical ratio of delete requests to write requests meeting a threshold ratio.

20. The computer-readable medium of claim 18 , wherein:

the one or more second attributes associated with the second storage volume comprises a metric indicating a ratio of delete requests to write requests received by the second storage volume; and

the setting the second discard option to be disabled is based on the metric meeting a threshold metric.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2022
From: PAUL, PRABIR; LIN, CHIA-CHUN; SRINIVASA, VIJAYAN SATYAMOORTHY
To: PURE STORAGE, INC., A DELAWARE CORPORATION
Reel/Frame 060956/0293 →
Continuity (1)
Related Publication 20240069781A1 · Feb 29, 2024
References Cited (180)
US 5287500A · Stoppani · 1994 [cited by applicant]
US 6785794B2 · Chase et al. · 2004 [cited by applicant]
US 7086061B1 · Joshi et al. · 2006 [cited by applicant]
US 7136885B2 · Wright et al. · 2006 [cited by applicant]
US 7281098B2 · Hiraiwa et al. · 2007 [cited by applicant]
US 7383466B2 · Kusters et al. · 2008 [cited by applicant]
US 7409497B1 · Kazar et al. · 2008 [cited by applicant]
US 7469327B2 · Kawamura et al. · 2008 [cited by applicant]
US 7558839B1 · McGovern · 2009 [cited by applicant]
US 7600014B2 · Russell et al. · 2009 [cited by applicant]
US 7640404B2 · MacIntyre et al. · 2009 [cited by applicant]
US 7769562B2 · Vaidyanathan et al. · 2010 [cited by applicant]
US 7827213B2 · Wright et al. · 2010 [cited by applicant]
US 7865888B1 · Qureshi et al. · 2011 [cited by applicant]
US 7962689B1 · Kazar et al. · 2011 [cited by applicant]
US 7970861B2 · Simitci et al. · 2011 [cited by applicant]
US 8015281B2 · Baker et al. · 2011 [cited by applicant]
US 8032626B1 · Russell et al. · 2011 [cited by applicant]
US 8032725B1 · Malinowski et al. · 2011 [cited by applicant]
US 8046549B2 · Kawamura et al. · 2011 [cited by applicant]
US 8135677B2 · Matsuzawa et al. · 2012 [cited by applicant]
US 8205060B2 · Hahn et al. · 2012 [cited by applicant]
US 8244935B2 · Leventhal et al. · 2012 [cited by applicant]
US 8281291B2 · Dmitrovich et al. · 2012 [cited by applicant]
US 8285961B2 · Sikdar et al. · 2012 [cited by applicant]
US 8332362B2 · McGovern et al. · 2012 [cited by applicant]
US 8375192B2 · Hahn et al. · 2013 [cited by applicant]
US 8407398B2 · Hobbet et al. · 2013 [cited by applicant]
US 8429187B2 · Theimer et al. · 2013 [cited by applicant]
US 8438342B1 · Todd et al. · 2013 [cited by applicant]
US 8458417B2 · Goss et al. · 2013 [cited by applicant]
US 8463802B2 · Lin et al. · 2013 [cited by applicant]
US 8495324B2 · Kirvan et al. · 2013 [cited by applicant]
US 8504797B2 · Mimatsu · 2013 [cited by applicant]
US 8560569B2 · Zimran et al. · 2013 [cited by applicant]
US 8601147B2 · Craft et al. · 2013 [cited by applicant]
US 8700853B2 · Ikegaya · 2014 [cited by applicant]
US 8751757B1 · Gaikwad et al. · 2014 [cited by applicant]
US 8799608B1 · Raizen et al. · 2014 [cited by applicant]
US 8819497B1 · Osiecki et al. · 2014 [cited by applicant]
US 8838920B2 · Mustanir et al. · 2014 [cited by applicant]
US 8838921B2 · Mustanir et al. · 2014 [cited by applicant]
US 8849856B2 · Hahn · 2014 [cited by applicant]
US 8880679B2 · Sharma et al. · 2014 [cited by applicant]
US 8914598B2 · Gulati et al. · 2014 [cited by applicant]
US 8935500B1 · Gulati et al. · 2015 [cited by applicant]
US 9015209B2 · Hahn et al. · 2015 [cited by applicant]
US 9015430B2 · Ranade · 2015 [cited by applicant]
US 9020993B2 · Hahn et al. · 2015 [cited by applicant]
US 9104686B2 · Jogand-Coulomb et al. · 2015 [cited by applicant]
US 9165078B2 · Bester et al. · 2015 [cited by applicant]
US 9201799B2 · Bisht et al. · 2015 [cited by applicant]
US 9378151B2 · Agarwal et al. · 2016 [cited by applicant]
US 9563385B1 · Kowalski et al. · 2017 [cited by applicant]
US 9563531B2 · Osiecki et al. · 2017 [cited by applicant]
US 9609042B1 · Pallemulle et al. · 2017 [cited by applicant]
US 9645926B2 · Takada et al. · 2017 [cited by applicant]
US 9665603B2 · Bester et al. · 2017 [cited by applicant]
US 9766965B2 · Waheed · 2017 [cited by applicant]
US 9785354B2 · Khandelwal et al. · 2017 [cited by applicant]
US 9853981B2 · Bastide et al. · 2017 [cited by applicant]
US 9921934B1 · Cattaneo et al. · 2018 [cited by applicant]
US 9930111B2 · Sharma et al. · 2018 [cited by applicant]
US 9940244B2 · Quimbey et al. · 2018 [cited by applicant]
US 9960979B1 · Blahaerath et al. · 2018 [cited by applicant]
US 10067981B2 · Fan et al. · 2018 [cited by applicant]
US 10089013B2 · Smith et al. · 2018 [cited by applicant]
US 10095612B2 · Newell et al. · 2018 [cited by applicant]
US 10120724B2 · Badjatia et al. · 2018 [cited by applicant]
US 10165037B2 · Trester et al. · 2018 [cited by applicant]
US 10217073B2 · Kapur et al. · 2019 [cited by applicant]
US 10223189B1 · Viswanathan et al. · 2019 [cited by applicant]
US 10263859B2 · Morgan et al. · 2019 [cited by applicant]
US 10282182B2 · Caprioli et al. · 2019 [cited by applicant]
US 10282245B1 · Viswanathan et al. · 2019 [cited by applicant]
US 10346367B1 · Luszcz et al. · 2019 [cited by applicant]
US 10359945B2 · Smith et al. · 2019 [cited by applicant]
US 10446174B2 · Das · 2019 [cited by applicant]
US 10496290B1 · Visvanathan et al. · 2019 [cited by applicant]
US 10592839B2 · Behringer et al. · 2020 [cited by applicant]
US 10623285B1 · Shevade et al. · 2020 [cited by applicant]
US 10691647B2 · Badjatia et al. · 2020 [cited by applicant]
US 10725661B2 · Khandelwal et al. · 2020 [cited by applicant]
US 10764288B2 · Bastide et al. · 2020 [cited by applicant]
US 10779223B2 · Yang et al. · 2020 [cited by applicant]
US 10783198B2 · Bester et al. · 2020 [cited by applicant]
US 10824374B1 · Gasser · 2020 [cited by applicant]
US 10860544B2 · Mahadik et al. · 2020 [cited by applicant]
US 10884629B1 · Kankani et al. · 2021 [cited by applicant]
US 10938901B2 · Aronovich et al. · 2021 [cited by applicant]
US 11075984B1 · Mercier et al. · 2021 [cited by applicant]
US 11089076B1 · Thario · 2021 [cited by applicant]
US 11093404B2 · Gottin et al. · 2021 [cited by applicant]
US 11132373B1 · Timko et al. · 2021 [cited by applicant]
US 11165667B2 · Dippenaar et al. · 2021 [cited by applicant]
US 11182344B2 · Goggin et al. · 2021 [cited by applicant]
US 11204891B2 · Abe et al. · 2021 [cited by applicant]
US 11301362B1 · John et al. · 2022 [cited by applicant]
US 11314417B2 · Raman et al. · 2022 [cited by applicant]
US 20020099818A1 · Russell et al. · 2002 [cited by applicant]
US 20030217245A1 · Chase et al. · 2003 [cited by applicant]
US 20040122873A1 · Wright · 2004 [cited by applicant]
US 20040139167A1 · Edsall et al. · 2004 [cited by applicant]
US 20040186858A1 · McGovern et al. · 2004 [cited by applicant]
US 20060095688A1 · Kawamura et al. · 2006 [cited by applicant]
US 20060224845A1 · Hiraiwa et al. · 2006 [cited by applicant]
US 20070016622A1 · Havewala et al. · 2007 [cited by applicant]
US 20070083568A1 · McGovern et al. · 2007 [cited by applicant]
US 20070179934A1 · Basov et al. · 2007 [cited by applicant]
US 20070245107A1 · Kano · 2007 [cited by applicant]
US 20080021992A1 · Sarma et al. · 2008 [cited by applicant]
US 20080098265A1 · Dmitrovich et al. · 2008 [cited by applicant]
US 20080235301A1 · Wright et al. · 2008 [cited by applicant]
US 20080282049A1 · Kawamura et al. · 2008 [cited by applicant]
US 20090064248A1 · Kwan et al. · 2009 [cited by applicant]
US 20090265458A1 · Baker et al. · 2009 [cited by applicant]
US 20090328155A1 · Madathilparamgil et al. · 2009 [cited by applicant]
US 20100030825A1 · Matsuzawa et al. · 2010 [cited by applicant]
US 20100082936A1 · Hobbet et al. · 2010 [cited by applicant]
US 20100122020A1 · Sikdar et al. · 2010 [cited by applicant]
US 20100153352A1 · Hahn et al. · 2010 [cited by applicant]
US 20100153452A1 · Hahn · 2010 [cited by applicant]
US 20100153474A1 · Bryant-Rich et al. · 2010 [cited by applicant]
US 20100180091A1 · Hahn et al. · 2010 [cited by applicant]
US 20100228795A1 · Hahn et al. · 2010 [cited by applicant]
US 20100306500A1 · Mimatsu · 2010 [cited by applicant]
US 20110072208A1 · Kumar et al. · 2011 [cited by applicant]
US 20110119328A1 · Simitci et al. · 2011 [cited by applicant]
US 20110138037A1 · Sharma et al. · 2011 [cited by applicant]
US 20110219201A1 · Ranade · 2011 [cited by applicant]
US 20110225346A1 · Goss et al. · 2011 [cited by applicant]
US 20110258241A1 · Raines et al. · 2011 [cited by applicant]
US 20110258406A1 · Suetsugu et al. · 2011 [cited by applicant]
US 20120011329A1 · Nonaka · 2012 [cited by applicant]
US 20120047154A1 · Lin et al. · 2012 [cited by applicant]
US 20120089651A1 · Hahn et al. · 2012 [cited by applicant]
US 20120102185A1 · Fernandes · 2012 [cited by applicant]
US 20120124308A1 · Mustanir et al. · 2012 [cited by applicant]
US 20120124319A1 · Kirvan et al. · 2012 [cited by applicant]
US 20120173593A1 · Jogand et al. · 2012 [cited by applicant]
US 20120173594A1 · Jogand-Coulomb et al. · 2012 [cited by applicant]
US 20120173709A1 · Li et al. · 2012 [cited by applicant]
US 20120254568A1 · Mustanir et al. · 2012 [cited by applicant]
US 20120311263A1 · Kamath et al. · 2012 [cited by applicant]
US 20130198474A1 · Shaath · 2013 [cited by applicant]
US 20130275680A1 · Kegaya · 2013 [cited by applicant]
US 20140359211A1 · Bisht et al. · 2014 [cited by applicant]
US 20150026337A1 · Sharma et al. · 2015 [cited by applicant]
US 20150039835A1 · Agarwal et al. · 2015 [cited by applicant]
US 20150205717A1 · Lin · 2015 [cited by examiner]
US 20150293708A1 · Lang et al. · 2015 [cited by applicant]
US 20150324130A1 · Lin · 2015 [cited by examiner]
US 20160026950A1 · Kapur et al. · 2016 [cited by applicant]
US 20160062895A1 · Bisht et al. · 2016 [cited by applicant]
US 20160147461A1 · Fan et al. · 2016 [cited by applicant]
US 20160179378A1 · Kent · 2016 [cited by examiner]
US 20160344603A1 · Trester et al. · 2016 [cited by applicant]
US 20160364145A1 · Smith et al. · 2016 [cited by applicant]
US 20160378338A1 · Khandelwal et al. · 2016 [cited by applicant]
US 20170147243A1 · Kowalski et al. · 2017 [cited by applicant]
US 20170147425A1 · Waheed · 2017 [cited by applicant]
US 20170230263A1 · Shelton et al. · 2017 [cited by applicant]
US 20170235840A1 · Bester et al. · 2017 [cited by applicant]
US 20170262465A1 · Goggin et al. · 2017 [cited by applicant]
US 20180011634A1 · Khandelwal et al. · 2018 [cited by applicant]
US 20180052714A1 · Badjatia et al. · 2018 [cited by applicant]
US 20180129667A1 · Abe et al. · 2018 [cited by applicant]
US 20180198690A1 · Morgan et al. · 2018 [cited by applicant]
US 20180217940A1 · Joshi et al. · 2018 [cited by applicant]
US 20190012083A1 · Smith et al. · 2019 [cited by applicant]
US 20190034241A1 · Badjatia et al. · 2019 [cited by applicant]
US 20190138969A1 · Behringer et al. · 2019 [cited by applicant]
US 20200201944A1 · Mahadik et al. · 2020 [cited by applicant]
US 20200401485A1 · Mitkar et al. · 2020 [cited by applicant]
US 20210004310A1 · Srinivasan et al. · 2021 [cited by applicant]
US 20210049131A1 · Mahadik et al. · 2021 [cited by applicant]
US 20210247906A1 · Sun · 2021 [cited by examiner]
US 20220045968A1 · Jubran et al. · 2022 [cited by applicant]
US 20220086075A1 · Nee et al. · 2022 [cited by applicant]
US 20220269671A1 · Dubeyko et al. · 2022 [cited by applicant]