IP Library Granted Patent US 9,910,613
Granted Patent B2
US 9,910,613 · App. 14/673,723 · Granted Mar 6, 2018

Volume admission control for high-performance distributed data storage system

Inventors: Vinay Pundalika Rao (San Jose, CA); Mark S. Lewis (Pleasanton, CA); Anna Povzner (San Jose, CA)
Assignee: eBay Inc.
G06F3/0629G06F3/0604G06F3/065G06F3/067G06F3/0607G06F3/0613G06F3/0631G06F3/0683
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 9,910,613
App. No.
14/673,723
Granted
Mar 6, 2018
Kind
B2
Abstract

New storage volumes are registered to a data storage environment. Registering new storage volumes is controlled based on the performance requirements of the storage volumes compared to the capacity of the data storage environment.

Claims (37)

1. A method of registering new storage volumes to a data storage environment comprising a plurality of storage nodes, the method comprising:

receiving a request to register a new storage volume to a subcluster of one or more storage nodes, wherein quality of service (QOS) parameters specify one or more I/O operations per second (IOPS) requirements for the new storage volume;

determining whether an IOPS capacity of the subcluster is sufficient to accommodate addition of the IOPS requirement for the new storage volume; and

if the TOPS capacity of the subcluster is sufficient, registering the new storage volume to the subcluster,

wherein determining whether an IOPS capacity of the subcluster is sufficient comprises adjusting the IOPS capacity of the subcluster by a replication factor indicative of a number of times storage volumes on the subcluster are replicated on the subcluster.

2. The method of claim 1 , wherein the QOS parameters for the new storage volume are specified in service level agreements for the storage volumes.

3. The method of claim 1 , wherein the QOS parameters for the new storage volume comprise I/O priority for the storage volume.

4. The method of claim 1 , wherein the QOS parameters for the new storage volume comprise a minimum IOPS requirement for the new storage volume.

5. The method of claim 1 , wherein the QOS parameters for the new storage volume comprise a maximum TOPS requirement for the new storage volume.

6. The method of claim 1 , wherein determining whether an IOPS capacity of the subcluster is sufficient comprises determining whether an IOPS capacity of the subcluster is sufficient to support minimum IOPS requirements for all existing storage volumes on the subcluster plus a minimum IOPS requirement for the new storage volume.

7. The method of claim 6 , wherein determining whether an IOPS capacity of the subcluster is sufficient further comprises adjusting the TOPS capacity of the subcluster by a loading factor.

8. The method of claim 7 , wherein at least one of the minimum IOPS requirements for the storage volumes are soft requirements and the loading factor is greater than 1.

9. The method of claim 7 , wherein the loading factor is less than 1.

10. The method of claim 7 , wherein the loading factor is in a range from 0.5-0.75.

11. The method of claim 1 , wherein determining whether an IOPS capacity of the subcluster is sufficient comprises determining whether an IOPS capacity of the subcluster is sufficient to support maximum IOPS requirement for all existing storage volumes on the subcluster plus a maximum IOPS requirement for the new storage volume.

12. The method of claim 11 , wherein determining whether an IOPS capacity of the subcluster is sufficient further comprises adjusting the maximum IOPS requirement for storage volumes by a burst factor indicative of burstiness of I/O activity on the subcluster.

13. The method of claim 11 wherein the burst factor is in a range from 0.3-0.4.

14. The method of claim 11 , wherein the burst factor is adapted over time based on actual burstiness of I/O activity on the subcluster.

15. The method of claim 1 , wherein the replication factor is adapted over time based on actual replications on the subcluster.

16. The method of claim 1 , further comprising:

providing a notification if the IOPS capacity of the subcluster is not sufficient.

17. The method of claim 1 , further comprising:

if the TOPS capacity of the subcluster is not sufficient, then not registering the new storage volume to the subcluster.

18. The method of claim 1 , wherein the request to register a new storage volume is received over a network from an application module.

19. A non-transitory computer-readable storage medium storing computer program modules for registering new storage volumes to a data storage environment comprising a plurality of storage nodes, the computer program modules executable to perform steps comprising:

receiving a request to register a new storage volume to a subcluster of one or more storage nodes, wherein quality of service (QOS) parameters specify one or more I/O operations per second (IOPS) requirements for the new storage volume;

determining whether an IOPS capacity of the subcluster is sufficient to accommodate addition of the IOPS requirement for the new storage volume; and

if the TOPS capacity of the subcluster is sufficient, registering the new storage volume to the subcluster,

wherein determining whether an IOPS capacity of the subcluster is sufficient comprises adjusting the IOPS capacity of the subcluster by a replication factor indicative of a number of times storage volumes on the subcluster are replicated on the subcluster.

20. A data storage environment comprising:

a plurality of application nodes that send application read requests and application write requests for data;

a plurality of storage nodes in communication with the application nodes, the storage nodes for storing the data organized as storage volumes;

an orchestration manager module in communication with the application nodes and the storage nodes, the orchestration manager module configured for:

receiving a request from an application node to register a new storage volume to a subcluster of one or more of the storage nodes, wherein quality of service (QOS) parameters specify one or more I/O operations per second (TOPS) requirements for the new storage volume;

determining whether an TOPS capacity of the subcluster is sufficient to accommodate addition of the TOPS requirement for the new storage volume; and

if the TOPS capacity of the subcluster is sufficient, registering the new storage volume to the subcluster,

wherein determining whether an TOPS capacity of the subcluster is sufficient comprises adjusting the TOPS capacity of the subcluster by a replication factor indicative of a number of times storage volumes on the subcluster are replicated on the subcluster.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY BY ADDING INVENTOR NAME PREVIOUSLY RECORDED AT REEL: 043869 FRAME: 0209. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Jan 3, 2018
From: FORMATION DATA SYSTEMS, INC.; PACIFIC WESTERN BANK
To: EBAY INC.
Reel/Frame 044986/0595 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2017
From: PACIFIC WESTERN BANK
To: EBAY INC.
Reel/Frame 043869/0209 →
SECURITY INTEREST Recorded May 30, 2017
From: FORMATION DATA SYSTEMS, INC.
To: PACIFIC WESTERN BANK
Reel/Frame 042527/0021 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2015
From: RAO, VINAY PUNDALIKA; LEWIS, MARK S; POVZNER, ANNA
To: FORMATION DATA SYSTEMS, INC.
Reel/Frame 035976/0690 →
Continuity (1)
Related Publication 20160291892A1 · Oct 6, 2016