IP Library Granted Patent US 10,013,456
Granted Patent B2
US 10,013,456 · App. 15/227,518 · Granted Jul 3, 2018

Parallel processing database system with a shared metadata store

Inventors: Caleb E. Welton (Foster City, CA); Hitoshi Harada (Foster City, CA); Jeffrey Ira Cohen (Sunnyvale, CA); Lei Chang (Beijing, CN); Radhika Reddy (Cupertino, CA); Tao Ma (Beijing, CN); Zhanwei Wang (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F17/30445G06F17/30194G06F17/30224G06F17/30283G06F17/30433G06F17/30463G06F17/30997H04L67/1097
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,013,456
App. No.
15/227,518
Granted
Jul 3, 2018
Kind
B2
Abstract

A method and system for executing database queries in parallel using a shared metadata store. The metadata store may reside on a master node, and the master node may distribute this metadata with query plans to worker nodes. The worker nodes may request additional metadata from the master node when necessary.

Claims (30)

1. A parallel processing database system, comprising:

a master node comprising one or more processors, wherein the master node is configured to receive a query from a client node, the query being communicated to the master node form the client node via one or more networks, develop a query plan based at least in part on the query, determine metadata to be used in connection with execution of the query plan, and to communicate, to a first worker node via at least one of the one or more networks, the query plan and the metadata determined to be used in connection with execution of the query plan, wherein the metadata is stored in a database catalog that comprises database objects, and wherein the metadata is associated with corresponding ones of the database objects;

the first worker node comprising one or more processors, wherein the first worker node is in communication with the master node and receives the query plan from the master node, executes at least a part of the query in connection with executing the query plan received from the master node, and in an event that the first worker node requires additional metadata in connection with executing the at least the part of the query, communicates a request for the additional metadata to a parent node corresponding to the first worker node; and

the parent node comprising one or more processors, wherein in the event that the parent node does not have the additional metadata, the parent node forwards the request for the additional metadata to a next parent node in a hierarchical structure of nodes.

2. The system of claim 1 , wherein the parent node corresponding to the first worker node is determined in relation to the hierarchical structure of nodes.

3. The system of claim 2 , wherein hierarchical structure of nodes includes the master node, the first worker node, and the parent node arranged in a hierarchy.

4. The system of claim 1 , wherein in the event that the parent node has the additional metadata, the parent node communicates the additional metadata to the first worker node.

5. The system of claim 1 , wherein the first worker node comprises a query execution process that is configured to execute a database query, wherein the first worker node runs the query execution process in response to receiving the query plan from the master node.

6. The system of claim 5 , wherein the database query comprises the query plan and query metadata.

7. The system of claim 6 , wherein the query metadata is stored in the database catalog and corresponds to the metadata that is associated with the database objects and that is determined to be used in connection with execution of the query plan.

8. The system of claim 1 , wherein the master node comprises a query dispatch process.

9. The system of claim 8 , wherein the query dispatch process receives the query from the client node.

10. The system of claim 9 , wherein the query dispatch process creates the query plan based at least in part on the query.

11. The system of claim 10 , wherein the query dispatch process transmits the query plan to the first worker node.

12. The system of claim 8 , wherein the query dispatch process obtains query metadata from the database catalog, wherein the query metadata corresponds to the metadata that is associated with the database objects and that is determined to be used in connection with execution of the query plan.

13. The system of claim 12 , wherein the query dispatch process transmits the query metadata to the first worker node.

14. The system of claim 8 , wherein the query dispatch process transmits a query plan and query metadata concurrently to the first worker node.

15. The system of claim 1 , further comprising a plurality of worker nodes, wherein the first worker node corresponds to at least one of the plurality of worker nodes.

16. The system of claim 15 , wherein the parent node corresponds to at least one of the plurality of worker nodes.

17. The system of claim 15 , wherein the master node communicates a plurality of query plans and corresponding query metadata to the plurality of worker nodes.

18. The system of claim 17 , wherein the plurality of worker nodes execute the query plans in parallel.

19. The system of claim 1 , wherein the database objects comprise one or more of database table definitions, database functions, database users, database views, and database indexes.

20. The system of claim 1 , wherein the first worker node executes the query plan using at least the metadata received from the master node.

21. The system of claim 1 , wherein the parent node is another worker node connected to the master node via the hierarchical structure of nodes.

22. The system of claim 1 , wherein the first worker node stores its ancestry in relation to the hierarchical structure of nodes.

23. The system of claim 1 , wherein in an event that a change is made to the metadata in the database catalog, the change is not propagated to the worker nodes to update a database at the worker nodes.

24. A method for processing a query, comprising:

receiving, by a worker node, a query plan and metadata from a master node via at least one of one or more networks, wherein the query plan is generated by the master node based at least in part on a query that the master node receives from a client node, the query being communicated to the master node form the client node via one or more networks, wherein the metadata is determine metadata to be used in connection with execution of the query plan, and wherein the metadata stored in a database catalog that comprises database objects, and wherein the metadata is associated with corresponding ones of the database objects;

executing, by the worker node, at least a part of the query in connection with executing the query plan received from the master node; and

in an event that the worker node requires additional metadata in connection with executing the at least the part of the query, communicating a request for the additional metadata to a parent node corresponding to the worker node, wherein in the event that the parent node does not have the additional metadata, the parent node forwards the request for the additional metadata to a next parent node in a hierarchical structure of nodes.

Assignments (9)
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 (041829/0873) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0724 →
RELEASE OF SECURITY INTEREST AT REEL 041808 FRAME 0516 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL INTERNATIONAL, L.L.C.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0573 →
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 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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2017
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 041872/0001 →
PATENT SECURITY INTEREST (NOTES) Recorded Feb 28, 2017
From: DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 041829/0873 →
PATENT SECURITY INTEREST (CREDIT) Recorded Feb 24, 2017
From: DELL INTERNATIONAL, L.L.C.; DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 041808/0516 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2016
From: WELTON, CALEB E.; HARADA, HITOSHI; COHEN, JEFFREY IRA; CHANG, LEI; REDDY, RADHIKA; MA, TAO; WANG, ZHANWEI
To: EMC CORPORATION
Reel/Frame 039334/0135 →
Continuity (3)
Continuation 13838749 · Mar 15, 2013
Provisional Application 61769043 · Feb 25, 2013
Related Publication 20160342647A1 · Nov 24, 2016