IP Library › Granted Patent US 12,386,830
Granted Patent B2
US 12,386,830 · App. 18/184,098 · Granted Aug 12, 2025

Query planner

Inventors: Opher Reviv (Kadima, IL); Eliad Hillel (Herzliya, IL); Yoav Markus (Tel-Aviv, IL)
Assignee: NeuroBlade Ltd.
G06F16/24542G06F16/22G06F16/2365G06F16/244G06F16/24535G06F16/24556G06F16/24569G06F16/248
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 12,386,830
App. No.
18/184,098
Granted
Aug 12, 2025
Kind
B2
Abstract

An accelerated database management system including at least one processor including circuitry and a memory. The memory includes instructions that when executed by the circuitry cause the at least one processor to: receive an initial database query: generate a main query based on the initial database query; analyze the main query, and based on the analysis of the main query, generate at least a first sub-query and a second sub-query, wherein the second sub-query differs from the first sub-query; process the first sub-query along a first processing path to provide a first input to an execution module; process the second sub-query along a second processing path, different from the first processing path, to provide a second input to the execution module; and based on the first input and the second input received by the execution module, generate a main query result.

Claims (54)

1. An accelerated database management system, comprising:

at least one processor including circuitry and a memory, wherein the memory includes instructions that when executed by the circuitry cause the at least one processor to:

receive an initial database query;

generate a main query based on the initial database query;

analyze the main query, and based on the analysis of the main query, generate at least a first sub-query and a second sub-query, wherein

the first sub-query includes a residual sub-query based on a portion of the main query other than the second sub-query, and

the first sub-query includes a reference to the second sub-query;

process the first sub-query along a first processing path to provide a first input to an execution module;

process the second sub-query along a second processing path, different from the first processing path, to provide a second input to the execution module, wherein

the first input includes a residual plan of the residual query and the second input includes one or more intermediate data tables from an accelerator unit, and

the execution module is configured to execute the residual plan relative to a residual database separate from an accelerator database associated with the accelerator unit; and

based on the first input and the second input received by the execution module, generate a main query result.

2. The accelerated database management system of claim 1 , further comprising an accelerator unit configured for receiving and processing an accelerator sub-query included in the second sub-query.

3. The accelerated database management system of claim 1 , wherein the first sub-query includes a residual sub-query based on a portion of the main query other than the second sub-query.

4. The accelerated database management system of claim 3 , wherein the residual sub-query includes the reference to the second sub-query.

5. The accelerated database management system of claim 1 , wherein the first processing path includes a query planner module configured to output the residual query plan based on the first sub-query.

6. The accelerated database management system of claim 5 , wherein the residual query plan is provided to the execution module as the first input.

7. The accelerated database management system of claim 5 , wherein the residual query plan includes the reference to the second sub-query.

8. The accelerated database management system of claim 7 , wherein the reference to the second sub-query includes an indication of an accelerator output to be received by the execution module as the second input.

9. The accelerated database management system of claim 1 , wherein the second processing path includes at least one accelerator unit.

10. The accelerated database management system of claim 1 , wherein the one or more intermediate data tables are provided to the execution module as the second input to the execution module.

11. The accelerated database management system of claim 1 , wherein the one or more intermediate data tables include intermediate data results generated by the at least one accelerator unit based on operations relative to data stored in the accelerator unit database.

12. The accelerated database management system of claim 1 , wherein the one or more intermediate data tables are generated by at least one accelerator execution module associated with the at least one accelerator unit.

13. The accelerated database management system of claim 1 , wherein the processing of the second-sub query along the second processing path is performed in parallel to the processing of the first sub-query along the first processing path.

14. The accelerated database management system of claim 1 , wherein the execution module is configured to execute the residual plan relative to the output from the accelerator unit.

15. The accelerated database management system of claim 1 , wherein the execution module is configured to execute the residual plan without reliance upon the output from the accelerator unit.

16. The accelerated database management system of claim 1 , wherein the execution module is configured to:

execute the residual plan relative to the residual database to provide a residual plan result; and

combine the residual plan result with the output from the accelerator unit to provide the main query result.

17. The accelerated database management system of claim 1 , wherein in response to the main query, the at least one processor is configured to:

determine, using a planner module, that a portion of the main query is performed by the accelerator unit; and

generate the second sub-query in order to perform the portion of the main query using the accelerator unit along the second processing path.

18. A computer-implemented method comprising:

receiving an initial database query;

generating a main query based on the initial database query;

analyzing the main query, and based on the analysis of the main query, generating at least a first sub-query and a second sub-query, wherein

the first sub-query includes a residual sub-query based on a portion of the main query other than the second sub-query, and

the first sub-query includes a reference to the second sub-query;

processing the first sub-query along a first processing path to provide a first input to an execution module;

processing the second sub-query along a second processing path, different from the first processing path, to provide a second input to the execution module, wherein

the first input includes a residual plan of the residual query and the second input includes one or more intermediate data tables from an accelerator unit, and

the execution module is configured to execute the residual plan relative to a residual database separate from an accelerator database associated with the accelerator unit; and

based on the first input and the second input received by the execution module, generating a main query result.

19. A non-transitory computer-readable medium having stored thereon computer-readable instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising:

receiving an initial database query;

generating a main query based on the initial database query;

analyzing the main query, and based on the analysis of the main query, generating at least a first sub-query and a second sub-query, wherein

the first sub-query includes a residual sub-query based on a portion of the main query other than the second sub-query, and

the first sub-query includes a reference to the second sub-query;

processing the first sub-query along a first processing path to provide a first input to an execution module;

processing the second sub-query along a second processing path, different from the first processing path, to provide a second input to the execution module, wherein

the first input includes a residual plan of the residual query and the second input includes one or more intermediate data tables from an accelerator unit, and

the execution module is configured to execute the residual plan relative to a residual database separate from an accelerator database associated with the accelerator unit; and

based on the first input and the second input received by the execution module, generating a main query result.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2023
From: HILLEL, ELIAD; MARKUS, YOAV; REVIV, OPHER
To: NEUROBLADE LTD.
Reel/Frame 065421/0166 →
Continuity (5)
Continuation PCTIB2023000018 · Jan 5, 2023
Provisional Application 63350579 · Jun 9, 2022
Provisional Application 63304975 · Jan 31, 2022
Provisional Application 63296645 · Jan 5, 2022
Related Publication 20230222123A1 · Jul 13, 2023
References Cited (19)
US 8862606B1 · Narayanan · 2014 [cited by examiner]
US 10417058B1 · Kesler · 2019 [cited by examiner]
US 20110302164A1 · Krishnamurthy · 2011 [cited by examiner]
US 20120047126A1 · Branscome et al. · 2012 [cited by applicant]
US 20140052743A1 · Schauer et al. · 2014 [cited by applicant]
US 20140379690A1 · Ahmed · 2014 [cited by examiner]
US 20150088919A1 · Hunter · 2015 [cited by examiner]
US 20180173753A1 · Pei · 2018 [cited by examiner]
US 20190188132A1 · Yap et al. · 2019 [cited by applicant]
US 20210248143A1 · Khillar · 2021 [cited by examiner]
US 20220012242A1 · Dosch · 2022 [cited by examiner]
US 20220269548A1 · Dwivedi · 2022 [cited by examiner]
US 20220292092A1 · Brown · 2022 [cited by examiner]
WO 2019025864A2 · 2019 [cited by applicant]
WO 2020049363A2 · 2020 [cited by applicant]
WO 2021028723A2 · 2021 [cited by applicant]
WO 2022082115A1 · 2022 [cited by applicant]
Joint Electron Device Engineering Council (JEDEC) Standard No. 79-4C, DDR SRAM, Jedec Solid State Technology Association, Jan. 2020. [cited by applicant]
International Search Report and Written Opinion of the International Search Authority in International Application No. PCT/IB2023/000018 dated Apr. 19, 2023 (9 pages). [cited by applicant]