Hardware Accelerator Reconfigurable Processors for Database Indexing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

General purpose CPUs are inefficient for database applications due to inaccurate branch prediction, limited parallelism, and inadequate memory and I/O bandwidth, leading to performance bottlenecks in relational database systems.

Innovation Solution

The implementation of a custom computing solution with Hardware Acceleration Reconfigurable Processors (HARPs) that offload repetitive database operations, utilizing dataflow architecture and column-store format to optimize database performance through hardware-friendly indexing and data structures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If general purpose CPUs are used to execute SQL queries, then flexibility and ease of operation are maintained, but processing speed and productivity are reduced due to inaccurate branch prediction and limited parallelism

Engineering Contradiction:
Improveease of operationVSAvoidprocessing speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system segments database operations into two categories: simple operations executed by general purpose CPUs and complex operations offloaded to specialized hardware accelerators. This segmentation allows each component to operate in its optimal performance zone, maintaining ease of operation through SQL interface while improving processing speed through specialized hardware for complex queries

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A query processor acts as an intermediary between the SQL interface and the execution engine. It analyzes queries, generates execution plans, and dynamically selects between CPU execution and hardware accelerator offloading. This intermediary layer maintains the ease of SQL operation while enabling optimized execution paths for improved processing speed

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If hardware acceleration with specialized processors is implemented, then processing speed and productivity are improved, but device complexity increases

Engineering Contradiction:
Improveprocessing speedVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The hardware accelerator is designed with multi-functionality to handle various database operations including table scanning, indexing, joining, and aggregation. By making the accelerator universal rather than operation-specific, the system improves processing speed for complex operations without proportionally increasing device complexity

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system creates a simplified hardware model that copies essential database operation patterns into dedicated hardware circuits. This copying approach allows complex operations to be executed in hardware without requiring complete redesign of the entire database system, thereby improving processing speed with controlled complexity increase

Inventive Principle:
Principle #26Copying

3Speed

If column-store format with hardware friendly indexing is used, then data access efficiency is improved, but adaptability to different query types decreases

Engineering Contradiction:
Improvedata access efficiencyVSAvoidadaptability to queries
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The system dynamically adapts the data storage format based on query characteristics. For queries benefiting from column-store efficiency, the system uses hardware-friendly indexing and reordering. For queries requiring row-level access, the system can dynamically switch to row-store representation. This dynamic adaptation maintains both data access efficiency and query versatility

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The query processor changes parameters such as data representation format, indexing strategy, and access method based on query type. By parameterizing the execution plan rather than being fixed to a single storage format, the system achieves both fast data access for analytical queries and adaptability for various query types

Inventive Principle:
Principle #35Parameter changes

4Productivity

If manual parallelism creation for SMT/CMP is implemented, then processing speed is improved, but ease of operation and device complexity increase

Engineering Contradiction:
Improveprocessing speedVSAvoidcode complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The hardware accelerator is designed to automatically execute parallel operations without requiring manual parallelism creation in application code. The specialized processor internally manages thread creation, scheduling, and coordination, allowing the system to achieve high processing speed while maintaining ease of operation through simple SQL interfaces

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9542442B2Accessing data in a column store database based on hardware compatible indexing and replicated reordered columns
Publication Date: 2017.01.10 TERADATA US INC
  • US9542442B2 patent drawing
  • US9542442B2 patent drawing
  • US9542442B2 patent drawing

AI summary

Embodiments of the present invention provide hardware-friendly indexing of databases. In particular, forward and reverse indexing are utilized to allow for easy traversal of primary key to foreign key relationships. A novel structure known as a hit list also allows for easy scanning of various indexes in hardware. Group indexing is provided for flexible support of complex group key definition, such as for date range indexing and text indexing. A Replicated Reordered Column (RRC) may also be added to the group index to convert random I/O pattern into sequential I/O of only needed column elements.