IP Library Granted Patent US 12,039,166
Granted Patent B2
US 12,039,166 · App. 17/400,559 · Granted Jul 16, 2024

Leveraging distinct storage tiers in a virtual storage system

Inventors: Ronald Karr (Palo Alto, CA); Naveen Neelakantam (Mountain View, CA); Radek Aster (Campbell, CA); Joshua Freilich (San Francisco, CA); Aswin Karumbunathan (San Francisco, CA)
Assignee: PURE STORAGE, INC.
G06F3/061G06F3/0614G06F3/0647G06F3/0652G06F3/0664G06F3/067G06F3/0689
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,039,166
App. No.
17/400,559
Granted
Jul 16, 2024
Kind
B2
Abstract

Leveraging distinct storage tiers in a virtual storage system, including: receiving a request to write data to the virtual storage system; selecting, from amongst a plurality of tiers in the virtual storage system, a tier for receiving the data, wherein the plurality of tiers include a write-mostly tier and at least one other tier; and storing, within the selected tier within the virtual storage system, the data.

Claims (52)

1. A method comprising:

receiving, by a cloud-based storage system comprising a storage array controller and a plurality of storage tiers, a request directed at data stored by the cloud-based storage system; and

in response to receiving the request and based on a resource constraint policy applicable to the cloud-based storage system, migrating data from a tier of the plurality of storage tiers of the cloud-based storage system to another tier of the plurality of storage tiers while maintaining redundancy data associated with the data in the tier, wherein the plurality of tiers include a write-mostly tier that is associated with an object store.

2. The method of claim 1 wherein selecting the tier for receiving the data further comprises:

determining that the likelihood that the data will be accessed is below a threshold; and

responsive to determining that the likelihood that the data will be accessed is below the threshold, selecting the write-mostly tier for storing the data.

3. The method of claim 1 wherein selecting the tier for receiving the data further comprises:

determining that costs associated with the cloud-based storage system have reached a threshold; and

responsive to determining that the costs associated with the cloud-based storage system have reached a threshold, selecting the write-mostly tier for storing the data.

4. The method of claim 1 further comprising:

detecting that the data is no longer part of a dataset that is stored in the other tier, where the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

5. The method of claim 4 wherein the data is included in a snapshot of the dataset.

6. The method of claim 1 further comprising:

detecting that the data has not been accessed for a threshold amount of time, where the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

7. The method of claim 1 further comprising storing the data in the other tier and also storing the data in the write-mostly tier.

8. The method of claim 7 further comprising, responsive to determining that a copy of the data stored in the other tier has become unavailable, retrieving the data from the write-mostly tier.

9. The method of claim 8 wherein the data stored in the other tier has become unavailable as a result of a ransomware attack.

10. The method of claim 1 further comprising:

receiving a request to delete the data, wherein the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

11. The method of claim 1 further comprising:

receiving a request to overwrite the data, wherein the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

12. A cloud-based storage system contained in a cloud computing environment, the cloud-based storage system including:

one or more virtual drives; and

one or more virtual controllers, each virtual controller executing in a cloud computing instance, wherein the one or more virtual controllers are configured for:

receiving, by a cloud-based storage system comprising a plurality of storage tiers, a request directed at data stored by the cloud-based storage system; and

in response to receiving the request and based on a resource constraint policy applicable to the cloud-based storage system, migrating data from a storage tier of the plurality of storage tiers of the cloud-based storage system to another storage tier of the plurality of storage tiers using one or more virtual drives while maintaining redundancy data associated with the data in the storage tier, wherein the plurality of tiers include a write-mostly tier that is associated with an object store.

13. The cloud-based storage system of claim 12 wherein selecting the tier for receiving the data further comprises:

determining that the likelihood that the data will be accessed is below a threshold; and

responsive to determining that the likelihood that the data will be accessed is below the threshold, selecting the write-mostly tier for storing the data.

14. The cloud-based storage system of claim 12 wherein selecting the tier for receiving the data further comprises:

determining that costs associated with the cloud-based storage system have reached a threshold; and

responsive to determining that the costs associated with the cloud-based storage system have reached a threshold, selecting the write-mostly tier for storing the data.

15. The cloud-based storage system of claim 12 wherein the one or more virtual controllers are additionally configured for:

detecting that the data is no longer part of a dataset that is stored in the other tier, where the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

16. The cloud-based storage system of claim 15 wherein the data is included in a snapshot of the dataset.

17. The cloud-based storage system of claim 12 wherein the one or more virtual controllers are additionally configured for:

detecting that the data has not been accessed for a threshold amount of time, where the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

18. The cloud-based storage system of claim 12 wherein the one or more virtual controllers are additionally configured for:

receiving a request to delete the data, wherein the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

19. The cloud-based storage system of claim 12 wherein the one or more virtual controllers are additionally configured for:

receiving a request to overwrite the data, wherein the data is stored in the other tier; and

migrating the data from the other tier to the write-mostly tier.

20. An apparatus comprising a computer processor and a computer memory, the computer memory including computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving, by a cloud-based storage system comprising a storage array controller and a plurality of storage tiers, a request directed at data stored by the cloud-based storage system; and

in response to receiving the request and based on a resource constraint policy applicable to the cloud-based storage system, migrating data from a tier of the plurality of storage tiers of the cloud-based storage system to another tier of the plurality of storage tiers while maintaining redundancy data associated with the data in the tier, wherein the plurality of tiers include a write-mostly tier that is associated with an object store.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2021
From: KARR, RONALD; NEELAKANTAM, NAVEEN; ASTER, RADEK; FREILICH, JOSHUA; KARUMBUNATHAN, ASWIN
To: PURE STORAGE, INC.
Reel/Frame 057161/0715 →
Continuity (7)
Continuation 16777867 · Jan 30, 2020
Provisional Application 62967368 · Jan 29, 2020
Provisional Application 62900998 · Sep 16, 2019
Provisional Application 62887154 · Aug 15, 2019
Provisional Application 62878877 · Jul 26, 2019
Provisional Application 62875947 · Jul 18, 2019
Related Publication 20210373761A1 · Dec 2, 2021