IP Library Granted Patent US 11,379,254
Granted Patent B1
US 11,379,254 · App. 16/373,961 · Granted Jul 5, 2022

Dynamic configuration of a cloud-based storage system

Inventors: Aswin Karumbunathan (San Francisco, CA); John Colgrove (Los Altos, CA); Constantine Sapuntzakis (Mountain View, CA); Joshua Freilich (San Francisco, CA); Naveen Neelakantam (Mountain View, CA); Sergey Zhuravlev (Campbell, CA)
Assignee: Pure Storage, Inc.
G06F9/45558G06F9/545H04L67/1097G06F2009/4557G06F2009/45562G06F2009/45595
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 11,379,254
App. No.
16/373,961
Filed
Apr 3, 2019
Granted
Jul 5, 2022
Kind
B1
Art Unit
2196
USPC
718/104
Abstract

A cloud-based storage system within a cloud computing environment, the cloud-based storage system including: monitoring, for the cloud-based storage system, one or more storage system operations, wherein the cloud-based storage system includes a virtual instance storage layer and a cloud-based storage layer; determining, based at least upon the one or more storage system operations, one or more access patterns for the cloud-based storage system; and modifying, based at least upon the one or more access patterns for the cloud-based storage system, one or more cloud configurations for the cloud-based storage system.

Claims (42)

1. A method comprising:

monitoring, for a cloud-based storage system, one or more system operations of the cloud-based storage system and one or more storage system operations received by the cloud-based storage system, wherein the cloud-based storage system comprises at least one storage controller instance, a virtual drive layer comprising at least one cloud computing instance having local storage, and a cloud-based storage layer having durable cloud-based storage, wherein the durable cloud-based storage is a repository for data received at the virtual drive layer, and wherein the one or more system operations are exclusive of storage Input/Output operations;

determining, based at least upon the one or more storage system operations directed to the cloud-based storage system, one or more access patterns for the cloud-based storage system; and

modifying, based at least upon the one or more access patterns and the one or more system operations, for the cloud-based storage system, a quantity of computing instances at the virtual drive layer and a quantity of cloud computing instances configured as storage controllers.

2. The method of claim 1 , wherein the virtual drive layer stores data in local storage in one or more cloud computing instances.

3. The method of claim 2 , wherein the local storage of the one or more cloud computing instances includes one or more solid-state drives.

4. The method of claim 1 , wherein the one or more access patterns indicate an increased workload or a decreased workload.

5. The method of claim 4 , further comprising: responsive to determining an increased workload, increasing a quantity of cloud computing instances at the virtual drive layer.

6. The method of claim 4 , further comprising: responsive to determining an increased workload, increasing a quantity of one or more cloud computing instances configured as storage controllers.

7. The method of claim 4 , further comprising: responsive to determining an increased workload, increasing one or more performance specifications of one or more cloud computing instances in the virtual drive layer.

8. The method of claim 4 , further comprising:

responsive to determining an increased workload, increasing a quantity of cloud computing instances at the virtual drive layer by an amount sufficient to prevent not satisfying performance requirements for a service level agreement.

9. The method of claim 4 , further comprising:

responsive to determining a decreased workload, performing one or more of:

decreasing a quantity of cloud computing instances at the virtual drive layer;

decreasing a quantity of one or more cloud computing instances configured as storage controllers;

decreasing one or more performance specifications of one or more cloud computing instances in the virtual drive laver; or

decreasing a quantity of one or more cloud computing instances at the virtual drive layer to continue satisfying performance requirements of a service level agreement within a threshold amount.

10. The method of claim 1 , wherein the one or more system operations of the cloud-based storage system include one or more of operations for deduplicating data, compressing data, encrypting data, and garbage collection.

11. A cloud-based storage system within a cloud computing environment, the cloud-based storage system including:

one or more computing devices comprising at least one processor and memory, and further comprising:

one or more storage controller applications;

a virtual drive layer including one or more cloud computing instances with each cloud computing instance having local storage;

a cloud-based storage layer including cloud-based object storage wherein the durable cloud-based storage is a repository for data received at the virtual drive layer; and

a dynamic cloud configuration module stored in memory and executed on a cloud computing instance, configured to:

monitor, for the cloud-based storage system, one or more system operations of the cloud-based storage system and one or more storage system operations received by the cloud-based storage system, and wherein the one or more system operations are exclusive of storage Input/Output operations;

determine, based at least upon the one or more storage system operations directed to the cloud-based storage system, one or more access patterns for the cloud-based storage system; and

modify, based at least upon the one or more access patterns and the one or more system operations, for the cloud-based storage system, a quantity of computing instances at the virtual drive layer and a quantity of cloud computing instances configured as storage controllers.

12. The cloud-based storage system of claim 11 , wherein local storage of the one or more cloud computing instances includes one or more solid-state drives.

13. The cloud-based storage system of claim 12 , wherein the virtual drive layer includes consistent data storage and the cloud-based storage layer includes eventually consistent data storage.

14. The cloud-based storage system of claim 11 , wherein the one or more storage controllers receive the one or more storage system operations.

15. The cloud-based storage system of claim 11 , wherein the one or more access patterns indicate an increased workload or a decreased workload.

16. The cloud-based storage system of claim 15 , wherein dynamic cloud configuration module is further configured to: responsive to determining an increased workload, increase a quantity of cloud computing instances and local storage at the virtual drive layer.

17. The cloud-based storage system of claim 15 , wherein the dynamic cloud configuration module is further configured to: responsive to determining an increased workload, increase a quantity of one or more cloud computing instances configured as storage controllers.

18. The cloud-based storage system of claim 15 , wherein the dynamic cloud configuration module is further configured to: responsive to determining an increased workload, increase one or more performance specifications of one or more cloud computing instances in the virtual drive layer.

19. The cloud-based storage system of claim 18 , wherein the dynamic cloud configuration module is further configured to: responsive to determining an increased workload, increase a quantity of cloud computing instances at the virtual drive layer by an amount sufficient to prevent not satisfying performance requirements for a service level agreement.

20. The cloud-based storage system of claim 15 , wherein the dynamic cloud configuration module is further configured to:

responsive to determining a decreased workload, perform one or more of:

decrease a quantity of one or more cloud computing instances at the virtual drive layer;

decrease a quantity of one or more cloud computing instances configured as storage controllers;

decrease one or more performance specifications of One or more cloud computing instances in the virtual drive layer; or

decrease a quantity of one or more cloud computing instances at the virtual instance layer to continue satisfying performance requirements of a service level agreement within a threshold amount.

Assignments (3)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2019
From: KARUMBUNATHAN, ASWIN; COLGROVE, JOHN; SAPUNTZAKIS, CONSTANTINE; FREILICH, JOSHUA; NEELAKANTAM, NAVEEN; ZHURAVLEV, SERGEY
To: PURE STORAGE, INC.
Reel/Frame 048780/0669 →
Continuity (2)
Provisional Application 62769277 · Nov 19, 2018
Provisional Application 62768952 · Nov 18, 2018
Cited By (8)
US 12,255,122 US 12,302,497 US 12,373,124 US 12,376,254 US 12,469,754 US 12,498,875 US 12,628,317 US 12,694,159