IP Library Granted Patent US 10,397,185
Granted Patent B1
US 10,397,185 · App. 15/390,291 · Granted Aug 27, 2019

Scalable cloud hosted metadata service

Inventors: Thomas Sandholm (Mountain View, CA); Julio Lopez (Mountain View, CA); Vaibhav Kamra (Sunnyvale, CA); Niraj Tolia (Sunnyvale, CA)
Assignee: EMC IP HOLDING COMPANY LLC
H04L63/0209H04L63/102
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 10,397,185
App. No.
15/390,291
Granted
Aug 27, 2019
Kind
B1
Abstract

Systems and methods for protecting and deduplicating streams of data in a cloud based platform. A platform is configured with multiple services and can communicate with multiple clients. The platform receives all requests at an endpoint and distributes the requests to workers using multiple queues. The platform may be stateless and is scalable. The meta-data is handled separately from the data in one example.

Claims (22)

1. A system for protecting data in a cloud environment, the system comprising: one or more hardware processors; and a plurality of services comprising computer-executable instructions that, when executed by one or more hardware processors, protect the data, the services including: a gateway service configured to receive a request from a client; a plurality of queues, the plurality of queues including a global request queue and a session request queue; a stream service configured to receive the request from the gateway service, wherein the stream service is configured to evaluate headers included in the request and place the request in one of the plurality of queues based on the header; and a plurality of workers, wherein any of the plurality of workers can service the request when the request is placed in the global request queue and wherein only a particular worker associated with a session associated with the session request queue can service the request when the request is in the session request queue.

2. The system of claim 1 , wherein the plurality of queues comprises a plurality of session request queues and each of the plurality of workers is associated with a different session request queue.

3. The system of claim 1 , wherein each of the plurality of workers is associated with one or more session request queues.

4. The system of claim 1 , the plurality of queues includes a notification queue configured to notify the plurality of workers about events and a response queue configured to deliver responses to the client.

5. The system of claim 1 , wherein the stream services passes a payload included in the request to the queues.

6. The system of claim 1 , wherein the worker performs the request and places a response in a response queue that is configured to be accessed by the client.

7. The system of claim 1 , wherein data associated with the request is handled separately from metadata associated with the request.

8. The system of claim 1 , wherein the worker is associated with a distributed store configured to store metadata associated with the data.

9. The system of claim 1 , wherein the request includes one of a create operation, an open operation, a flush operation, a close operation, a cancel operation, a delete operation, a write chunk data operation, a write chunk map operation, a read chunk map operation, a set attributes operation, a get attributes operation, and a queue operation.

10. A method for protecting data in a cloud environment, the system comprising:

receiving a request from a client at a gateway service;

receiving the request at a stream service from the gateway service;

evaluating headers included in the request and placing the request in one of a plurality of queues based on the header, the plurality of queues including a global request queue and a session request queue; and

servicing the request, wherein any of a plurality of workers can service the request when the request is placed in the global request queue and wherein only a particular worker associated with a session associated with the session request queue can service the request when the request is in the session request queue.

11. The method of claim 10 , wherein the plurality of queues comprises a plurality of session request queues and each of the plurality of workers is associated with a different session request queue.

12. The method of claim 11 , further comprising associating each of the plurality of workers with one or more session request queues.

13. The method of claim 10 , further comprising notifying the plurality of workers of events by placing notifications in a notification queue and responding to the request by placing a response in a response queue.

14. The method of claim 10 , further comprising passing, by the stream service, a payload included in the request to the plurality of queues.

15. The method of claim 10 , further comprising performing the request and placing a response in a response queue that is configured to be accessed by the client.

16. The method of claim 10 , further comprising handling data associated with the request separately from metadata associated with the request.

17. The method of claim 10 , further comprising associating the plurality of workers with a distributed store configured to store metadata associated with the data.

18. The method of claim 10 , wherein the request includes one of a create operation, an open operation, a flush operation, a close operation, a cancel operation, a delete operation, a write chunk data operation, a write chunk map operation, a read chunk map operation, a set attributes operation, a get attributes operation, and a queue operation.

Assignments (12)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (051302/0528) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.); SECUREWORKS CORP.
Reel/Frame 060438/0593 →
RELEASE OF SECURITY INTEREST AT REEL 051449 FRAME 0728 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
Reel/Frame 058002/0010 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Dec 31, 2019
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.; EMC CORPORATION
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 051449/0728 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Dec 16, 2019
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.; SECUREWORKS CORP.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 051302/0528 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
EMPLOYMENT AGREEMENT Recorded Nov 29, 2018
From: KAMRA, VAIBHAV
To: EMC CORPORATION
Reel/Frame 047686/0361 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2018
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 047752/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2018
From: SANDHOLM, THOMAS
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 047201/0458 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2018
From: TOLIA, NIRAJ
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045990/0820 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2018
From: LOPEZ, JULIO
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 045938/0550 →
Cited By (11)
US 12,231,440 US 12,250,230 US 12,250,231 US 12,255,900 US 12,273,357 US 12,273,358 US 12,273,359 US 12,353,907 US 12,368,767 US 12,375,499 US 12,609,991