IP Library Granted Patent US 9,141,670
Granted Patent B2
US 9,141,670 · App. 13/172,792 · Granted Sep 22, 2015

Methods and systems for hardware acceleration of streamed database operations and queries based on multiple hardware accelerators

Inventors: Jeremy L. Branscome (Santa Clara, CA); Michael Paul Corwin (Sunnyvale, CA); Joseph Irawan Chamdani (Santa Clara, CA); Rajasekhar Cherabuddi (Saratoga, CA)
Assignee: Teradata US, Inc.
G06F17/30519
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,141,670
App. No.
13/172,792
Granted
Sep 22, 2015
Kind
B2
Abstract

Embodiments of the present invention provide a hardware accelerator that assists a host database system in processing its queries. The hardware accelerator comprises special purpose processing elements that are capable of receiving database query/operation tasks in the form of machine code database instructions, execute them in hardware without software, and return the query/operation result back to the host system.

Claims (57)

1. A method for integrating relational database operations through a hardware accelerator coupled with a host system running a relational database management system for a relational database, said method comprising:

receiving a relational query having one or more tasks related to at least one row of the relational database;

compiling the tasks into a program of database machine code operations specifying a stream of operations for the tasks;

executing the program of database machine code operations in a dataflow architecture query processing module implemented using said hardware accelerator, wherein the dataflow architecture query processing module includes at least one node configured to receive and process its input as data configured to arrive from at least one other node associated with the at least one node, and wherein said database machine code operations are executed within said hardware accelerator without software; and

providing a result for the tasks based on the program of database machine code operations.

2. The method of claim 1 , wherein the program of database machine code operations are configured to convert rows of data into a column store format.

3. The method of claim 1 , wherein the program of database machine code instructions are configured for compression of data from the relational database.

4. The method of claim 1 , wherein the program of database machine code instructions are configured for decompression of data from the relational database.

5. The method of claim 1 , wherein the program of database machine code instructions are configured for encryption of data from the relational database.

6. The method of claim 1 , wherein the program of database machine code instructions are configured for a projection operation.

7. The method of claim 1 , wherein the program of database machine code instructions are configured for a predicate filtering operation.

8. The method of claim 1 , wherein the program of database machine code instructions are configured for a groupby aggregation.

9. The method of claim 1 , wherein the program of database machine code instructions are configured for an orderby limit operation.

10. The method of claim 1 , wherein the program of database machine code instructions are configured for a hash join operation.

11. The method of claim 1 , wherein the program of database machine code instructions are configured for a sorted merge join operation.

12. The method of claim 1 , wherein the program of database machine code instructions are configured for a merge sort operation.

13. A method for integrating relational database operations through a hardware accelerator coupled with a host system running a relational database management system for a relational database, said method comprising:

receiving a relational query having one or more tasks related to at least one row of the relational database;

compiling the tasks into a program of database machine code operations specifying a stream of operations for the tasks;

executing the program of database machine code operations in a dataflow architecture query processing module implemented using said hardware accelerator, wherein the program of database machine code operations are configured to convert rows of data into a column store format; and

providing a result for the tasks based on the program of database machine code operations.

14. The method of claim 13 wherein the program of database machine code instructions are configured for compression of data from the relational database.

15. A computing device that includes:

a hardware accelerator; and

one or more processors configured to:

integrate relational database operations through the hardware accelerator when coupled with a host system running a relational database management system for a relational database;

receive a relational query having one or more tasks related to at least one row of the relational database;

compile the tasks into a program of database machine code operations specifying a stream of operations for the tasks;

execute the program of database machine code operations in a dataflow architecture query processing module implemented using said hardware accelerator, wherein the dataflow architecture query processing module includes at least one node configured to receive and process its input as data configured to arrive from at least one other node associated with the at least one node, and wherein said database machine code operations are executed within said hardware accelerator without software; and

provide a result for the tasks based on the program of database machine code operations.

16. The computing device of claim 15 , wherein the program of database machine code operations are configured to convert rows of data into a column store format.

17. The computing device of claim 15 , wherein the program of database machine code instructions are configured for compression of data from the relational database.

18. The computing device of claim 15 , wherein the program of database machine code instructions are configured for decompression of data from the relational database.

19. The computing device of claim 15 , wherein the program of database machine code instructions are configured for encryption of data from the relational database.

20. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a projection operation.

21. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a predicate filtering operation.

22. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a groupby aggregation.

23. The computing device of claim 15 , wherein the program of database machine code instructions are configured for an orderby limit operation.

24. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a hash join operation.

25. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a sorted merge join operation.

26. The computing device of claim 15 , wherein the program of database machine code instructions are configured for a merge sort operation.

27. A non-transitory computer readable storage medium storing at least executable code for integrating relational database operations through a hardware accelerator coupled with a host system running a relational database management system for a relational database, wherein when executed the executable code causes:

receiving a relational query having one or more tasks related to at least one row of the relational database;

compiling the tasks into a program of database machine code operations specifying a stream of operations for the tasks;

executing the program of database machine code operations in a dataflow architecture query processing module implemented using said hardware accelerator, wherein the dataflow architecture query processing module includes at least one node configured to receive and process its input as data configured to arrive from at least one other node associated with the at least one node, and wherein said database machine code operations are executed within said hardware accelerator without software; and

providing a result for the tasks based on the program of database machine code operations.

28. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code operations are configured to convert rows of data into a column store format.

29. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for compression of data from the relational database.

30. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for decompression of data from the relational database.

31. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for encryption of data from the relational database.

32. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a projection operation.

33. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a predicate filtering operation.

34. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a groupby aggregation.

35. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for an orderby limit operation.

36. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a hash join operation.

37. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a sorted merge join operation.

38. The non-transitory computer readable storage medium of claim 27 , wherein the program of database machine code instructions are configured for a merge sort operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2011
From: BRANSCOME, JEREMY L.; CORWIN, MICHAEL PAUL; CHAMDANI, JOSEPH IRAWAN; CHERABUDDI, RAJASEKHAR
To: TERADATA US, INC.
Reel/Frame 027130/0388 →
Continuity (2)
Provisional Application 61359407 · Jun 29, 2010
Related Publication 20120047126A1 · Feb 23, 2012