IP Library Granted Patent US 11,861,235
Granted Patent B2
US 11,861,235 · App. 17/732,328 · Granted Jan 2, 2024

Maximizing data throughput in a cloud-based storage system

Inventors: Naveen Neelakantam (Mountain View, CA); Joshua Freilich (San Francisco, CA)
Assignee: PURE STORAGE, INC.
G06F3/0659G06F3/061G06F3/067G06F3/0638G06F3/0656G06F13/28H04L67/566
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,861,235
App. No.
17/732,328
Filed
Apr 28, 2022
Granted
Jan 2, 2024
Kind
B2
Examiner
MAMO, ELIAS
Art Unit
2184
USPC
711/154
Abstract

Maximizing data throughput in a cloud-based storage system, including: receiving a plurality of write operations directed to a cloud-based storage system; coalescing the plurality of write operations into one or more coalesced write operations, wherein each of the coalesced write operations are configured to effect two or more of the first plurality of write operations; and performing, based on a service tier associated with the cloud-based storage system, the plurality of coalesced write operations on the storage volume.

Claims (36)

1. A method comprising:

receiving, by a storage controller, a plurality of write operations directed to a cloud-based storage system, wherein the plurality of write operations exceeds an IOPS threshold associated with a service tier on the cloud-based storage system;

coalescing, by the storage controller, two or more write operations of the plurality of write operations into one or more coalesced write operations, wherein each of the coalesced write operations are configured to effect two or more of the plurality of write operations, such that the number of the write operations including coalesced write operations is lower than the IOPS threshold; and

performing, by the storage controller, based on the service tier associated with the cloud-based storage system, the one or more coalesced write operations on a storage volume.

2. The method of claim 1 , wherein performing the one or more coalesced write operations comprises sending a single input/output control command for each coalesced write operation of the coalesced write operations.

3. The method of claim 1 , wherein receiving the first plurality of write operations comprises adding the first plurality of write operations to a queue.

4. The method of claim 3 further comprising determining, by the storage controller, based on a state of the queue, to coalesce the first plurality of write operations.

5. The method of claim 4 , wherein determining to coalesce the first plurality of write operations is further based on an Input/Output Operations per Second (IOPS) threshold.

6. The method of claim 1 , further comprising:

receiving a second plurality of write operations;

determining not to coalesce the second plurality of write operations; and

performing the second plurality of write operations.

7. The method of claim 1 , wherein each of the first plurality of write operations comprises a write message, and wherein coalescing the first plurality of write operations comprises coalescing, into each of the plurality of coalesced write operations, two or more write messages.

8. An apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

coalescing two or more write operations of a plurality of write operations into one or more coalesced write operations, wherein each of the coalesced write operations are configured to effect two or more of the plurality of write operations, such that the number of the write operations including coalesced write operations is lower than an IOPS threshold that is associated with a service tier on the cloud-based storage system; and

performing, based on the service tier associated with the cloud-based storage system, the one or more coalesced write operations on a storage volume.

9. The apparatus of claim 8 , wherein performing the one or more coalesced write operations comprises sending a single input/output control command for each coalesced write operation of the coalesced write operations.

10. The apparatus of claim 8 , wherein receiving the first plurality of write operations comprises adding the first plurality of write operations to a queue.

11. The apparatus of claim 10 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of determining, based on a state of the queue, to coalesce the first plurality of write operations.

12. The apparatus of claim 11 , wherein determining to coalesce the first plurality of write operations is further based on an Input/Output Operations per Second (IOPS) threshold.

13. The apparatus of claim 8 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving a second plurality of write operations;

determining not to coalesce the second plurality of write operations; and

performing the second plurality of write operations.

14. The apparatus of claim 8 , wherein each of the first plurality of write operations comprises a write message, and wherein coalescing the first plurality of write operations comprises coalescing, into each of the plurality of coalesced write operations, two or more write messages.

15. A computer program product for disposed upon a non-transitory computer readable medium, the computer program product comprising computer program instructions that, when executed, cause a computer to carry out the steps of:

coalescing two or more write operations of a plurality of write operations into one or more coalesced write operations, wherein each of the coalesced write operations are configured to effect two or more of the plurality of write operations, such that the number of the write operations including coalesced write operations is lower than an IOPS threshold that is associated with a service tier on the cloud-based storage system; and

performing, based on the service tier associated with the cloud-based storage system, the one or more coalesced write operations on a storage volume.

16. The computer program product of claim 15 , wherein performing the one or more coalesced write operations comprises sending a single input/output control command for each coalesced write operation of the coalesced write operations.

17. The computer program product of claim 15 , wherein receiving the first plurality of write operations comprises adding the first plurality of write operations to a queue.

18. The computer program product of claim 17 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of determining, based on a state of the queue, to coalesce the first plurality of write operations.

19. The computer program product of claim 18 , wherein determining to coalesce the first plurality of write operations is further based on an Input/Output Operations per Second (IOPS) threshold.

20. The computer program product of claim 15 further comprising computer program instructions that, when executed, cause the computer to carry out the steps of:

receiving a second plurality of write operations;

determining not to coalesce the second plurality of write operations; and

performing the second plurality of write operations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2022
From: NEELAKANTAM, NAVEEN; FREILICH, JOSHUA
To: PURE STORAGE, INC.
Reel/Frame 059901/0473 →
Continuity (6)
Continuation 17160739 · Jan 28, 2021
Continuation 16519618 · Jul 23, 2019
Provisional Application 62821166 · Mar 20, 2019
Provisional Application 62769277 · Nov 19, 2018
Provisional Application 62768952 · Nov 18, 2018
Related Publication 20220253251A1 · Aug 11, 2022