IP Library › Granted Patent US 11,681,445
Granted Patent B2
US 11,681,445 · App. 17/490,859 · Granted Jun 20, 2023

Storage-aware optimization for serverless functions

Inventors: Taher Vohra (Sunnyvale, CA); Luis Pablo Pabón (Sturbridge, MA)
Assignee: Pure Storage, Inc.
G06F3/0622G06F3/0604G06F3/067G06F3/0646G06N20/00
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,681,445
App. No.
17/490,859
Granted
Jun 20, 2023
Kind
B2
Abstract

An illustrative method includes a storage-aware serverless function management system monitoring one or more serverless function instances of one or more serverless functions implemented in a serverless system, the one or more serverless function instances associated with one or more components of a storage system, determining a portion of a component among the one or more components of the storage system based on the monitoring, and requesting the storage system to adjust storage of data associated with the portion of the component.

Claims (52)

1. A method comprising:

monitoring, by a storage-aware serverless function management system, one or more serverless function instances of one or more serverless functions implemented in a serverless system, the one or more serverless function instances accessing one or more components of a storage system;

determining, by the storage-aware serverless function management system, a portion of a data item among the one or more components of the storage system based on the monitoring; and

requesting, by the storage-aware serverless function management system, the storage system to adjust storage of data associated with the portion of the data item.

2. The method of claim 1 , wherein the determining of the portion of the data item comprises:

determining that an access level associated with the portion of the data item satisfies an access level threshold.

3. The method of claim 1 , wherein:

the determining of the portion of the data item is based on an access level associated with the portion of the data item relative to one or more access levels associated with the one or more components of the storage system.

4. The method of claim 1 , wherein:

the one or more components of the storage system include a storage volume, a file directory, or an object bucket in the storage system.

5. The method of claim 1 , wherein:

the one or more components of the storage system include one or more data items stored within the storage system.

6. The method of claim 1 , wherein the requesting the storage system to adjust the storage of the data associated with the portion of the data item comprises:

requesting the storage system to relocate or replicate the data within the portion of the data item to an additional component of the storage system.

7. The method of claim 6 , further comprising:

identifying, by the storage-aware serverless function management system, the additional component of the storage system based on one or more of an access level associated with the additional component or a resource attribute of the additional component.

8. The method of claim 6 , further comprising:

receiving, by the storage-aware serverless function management system, a request to execute a first serverless function instance and a request to execute a second serverless function instance, the first serverless function instance and the second serverless function instance using the data within the portion of the data item;

executing, by the storage-aware serverless function management system, the first serverless function instance using the portion of the data item of the storage system; and

executing, by the storage-aware serverless function management system, the second serverless function instance using the additional component of the storage system.

9. The method of claim 1 , wherein:

the determining of the portion of the data item is performed using a machine learning model.

10. The method of claim 1 , further comprising:

determining, by the storage-aware serverless function management system and based on the monitoring, an adjustment to be made to the storage of the data associated with the portion of the data item.

11. A system comprising:

a memory storing instructions; and

a processor communicatively coupled to the memory and configured to execute the instructions to:

monitor one or more serverless function instances of one or more serverless functions implemented in a serverless system, the one or more serverless function instances accessing one or more components of a storage system;

determine a portion of a data item among the one or more components of the storage system based on the monitoring; and

request the storage system to adjust storage of data associated with the portion of the data item.

12. The system of claim 11 , wherein the determining of the portion of the data item comprises:

determining that an access level associated with the portion of the data item satisfies an access level threshold.

13. The system of claim 11 , wherein:

the determining of the portion of the data item is based on an access level associated with the portion of the data item relative to one or more access levels associated with the one or more components of the storage system.

14. The system of claim 11 , wherein:

the one or more components of the storage system include a storage volume, a file directory, or an object bucket in the storage system.

15. The system of claim 11 , wherein:

the one or more components of the storage system include one or more data items stored within the storage system.

16. The system of claim 11 , wherein the requesting the storage system to adjust the storage of the data associated with the portion of the data item comprises:

requesting the storage system to relocate or replicate the data within the portion of the data item to an additional component of the storage system.

17. The system of claim 16 , wherein the processor is further configured to execute the instructions to:

identify the additional component of the storage system based on one or more of an access level associated with the additional component or a resource attribute of the additional component.

18. The system of claim 16 , wherein the processor is further configured to execute the instructions to:

receive a request to execute a first serverless function instance and a request to execute a second serverless function instance, the first serverless function instance and the second serverless function instance using the data within the portion of the data item;

execute the first serverless function instance using the portion of the data item of the storage system; and

execute the second serverless function instance using the additional component of the storage system.

19. The system of claim 11 , wherein:

the determining of the portion of the data item is performed using a machine learning model.

20. A non-transitory computer-readable medium storing instructions that, when executed, direct a processor of a computing device to:

monitor one or more serverless function instances of one or more serverless functions implemented in a serverless system, the one or more serverless function instances accessing one or more components of a storage system;

determine a portion of a data item among the one or more components of the storage system based on the monitoring; and

request the storage system to adjust storage of data associated with the portion of the data item.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2021
From: VOHRA, TAHER; PABÓN, LUIS PABLO
To: PURE STORAGE, INC., A DELAWARE CORPORATION
Reel/Frame 057661/0081 →
Continuity (1)
Related Publication 20230102541A1 · Mar 30, 2023
Cited By (15)
US 12,379,835 US 12,430,825 US 12,443,514 US 12,573,105 US 12,586,268 US 12,639,402 US 12,645,759 US 12,694,636 US 12,705,579 US 12,711,259 US 12,711,464 US 12,717,468 US 12,732,508 US 12,738,365 US 12,743,497