Pipelined Hardware Query Processing for High-Throughput Joins
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database query processing systems face inefficiencies in executing commands like Join and Group-by, particularly in terms of memory access bandwidth and throughput, especially when dealing with large datasets.
Innovation Solution
A hardware-implemented pipeline with table-processing circuits (TPCs) that include Processing Engines (PEs) and Lookup Engines (LEs) to parse and process database records, using techniques such as insertion and lookup phases, error-free hashes, and caching to optimize memory access and reduce bandwidth.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional software-based database query processing is used, then system complexity is reduced, but memory access bandwidth and throughput are insufficient for large datasets
Solution Approach 1:
The query processing system is segmented into distinct hardware modules: a processing engine for parsing and planning queries, and a lookup engine for executing join and group-by operations. This segmentation allows each module to be optimized independently for its specific function, achieving high throughput while managing overall system complexity through modular architecture.
Solution Approach 2:
The patent replaces traditional software-based query processing with a hardware-implemented pipeline. The processing engine and lookup engine use dedicated hardware circuits to perform query operations, substituting the mechanical/software processing approach with an accelerated hardware system that delivers superior throughput and memory access bandwidth.
2Productivity
If hardware pipeline with multiple circuits is implemented, then processing throughput is improved, but device complexity increases
Solution Approach 1:
The lookup engine is designed as a universal circuit that can execute multiple database operations (join and group-by) using the same hardware architecture. This multi-functionality reduces the need for separate dedicated circuits for each operation, thereby managing device complexity while maintaining high processing throughput across different query types.
Solution Approach 2:
The processing engine performs preliminary actions by parsing queries, generating execution plans, and preparing lookup keys before data processing begins. This preliminary processing in the processing engine reduces the complexity burden on the lookup engine during actual data processing, allowing the hardware pipeline to achieve high throughput with manageable circuit complexity.
3Speed
If memory access bandwidth is increased to handle large datasets, then query processing speed improves, but memory cost and system complexity increase
Solution Approach 1:
The patent introduces an intermediary hash table structure that mediates between the processing engine and the lookup engine. This hash table enables efficient key-based lookup and joining of data from multiple sources, achieving high memory access speed without requiring complex memory systems. The intermediary structure simplifies the overall memory architecture while delivering the necessary performance.
Data Source
AI summary
An apparatus for applying database operations to one or more database tables. The apparatus includes a hardware pipeline including multiple configurable hardware-implemented table-processing circuits connected in a cascade. The hardware pipeline is configured to execute requested database operations on the one or more database tables, by configuring a hardware of at least some of the table-processing circuits in accordance with the database operations, receiving a stream of input records drawn from the one or more database tables, parsing the records, input applying the database operations to the parsed input records, using the at least some of the table-processing circuits, so as to produce output record, and streaming the output records from the hardware pipeline.


