Hardware Hash-Table Grouping Bypasses Global Sort

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database management systems face inefficiencies in performing grouping and aggregation operations, particularly when dealing with large datasets, as they often require global sorting, leading to random memory access issues and increased power consumption.

Innovation Solution

The implementation of specialized hardware that uses a hash-table-based approach to map group values to addresses in content-addressable memory, allowing for efficient grouping and aggregation operations without a global sort, and handling collisions by updating pointers to next group memory locations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If global sorting is used for grouping and aggregation operations, then correct grouping results are achieved, but random memory access issues increase and power consumption rises

Engineering Contradiction:
Improvegrouping operation correctnessVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent divides the data processing into segments by using hash functions to map group values to specific memory locations. Instead of globally sorting all data, the system segments data access by computing hash values for group columns and directly accessing corresponding memory addresses, thereby reducing unnecessary memory accesses and power consumption while maintaining grouping correctness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary hashing actions to group values before actual data aggregation. By pre-computing hash values and establishing memory address mappings for group columns, the system prepares data access paths in advance, avoiding the need for global sorting during the aggregation phase and reducing both memory access complexity and power consumption.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If global sorting is performed for grouping operations, then accurate aggregation results are obtained, but processing time increases

Engineering Contradiction:
Improveaggregation accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the processing workflow by separating the hashing operation from the aggregation operation. Hash functions are applied to group values to determine memory locations, and then aggregation is performed by directly accessing those locations. This segmentation eliminates the time-consuming global sorting step while preserving aggregation accuracy through deterministic memory address mapping.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the mechanical sorting process with a computational hashing mechanism. Instead of physically sorting data rows to group them together, the system uses hash functions to computationally determine where grouped data should be stored and retrieved, significantly reducing processing time while maintaining aggregation accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If traditional database operations are used for grouping, then compatibility with existing systems is maintained, but performance on large datasets deteriorates

Engineering Contradiction:
Improvesystem compatibilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces hash functions as an intermediary mechanism between traditional database operations and memory access. This intermediary layer maintains compatibility with existing SQL grouping syntax and data models while transforming the underlying operation from global sorting to direct memory addressing, thereby improving processing speed on large datasets without sacrificing system compatibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of operation

If random memory access is required for grouping operations, then flexible data access is achieved, but power consumption and processing time increase

Engineering Contradiction:
Improvedata access flexibilityVSAvoidmemory access time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent changes the access pattern parameter from random to deterministic by using hash functions. Instead of randomly accessing memory locations during grouping operations, the system computes deterministic memory addresses based on hash values of group columns. This parameter change maintains data access flexibility while dramatically reducing memory access time and improving cache utilization.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP2885728B1Hardware implementation of the aggregation/group by operation: HASH-table method
Publication Date: 2019.07.31 ORACLE INT CORP
  • EP2885728B1 patent drawingFigure 1A
  • EP2885728B1 patent drawingFigure 1B
  • EP2885728B1 patent drawingFigure 2

AI summary

Techniques are described for performing grouping and aggregation operations. In one embodiment, a request is received to aggregate data grouped by a first column. In response to receiving the request, a group value in a row of a first column is mapped to an address. A pointer is stored for a first group at a first location identified by the address. The pointer identifies a second location of a set of aggregation data for the first group. An aggregate value included in the set of aggregation data is updated based on a value in the row of a second column.