Parallel Aggregation System Dynamic Node Adaptation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In parallel computer systems, data re-partitioning during queries can be inefficient due to non-uniform data distributions and the lack of a priori knowledge on the effectiveness of data reduction techniques like compression or grouping, leading to sub-optimal performance.

Innovation Solution

A parallel aggregation system dynamically decides on local aggregation based on the characteristics of each node, using a hash table and priority queue to selectively perform operations per unique key value, combining local and global aggregation with data exchange into a single operation, and adaptively managing memory to optimize data transfer and processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data reduction (grouping/compression) is performed prior to re-partitioning, then data volume to be re-partitioned is reduced, but the effectiveness is unknown a priori and may be sub-optimal if data is already compressed

Engineering Contradiction:
Improvedata volumeVSAvoidquery processing efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system dynamically decides whether to perform local aggregation at each node based on the actual characteristics of the data partition, rather than using a fixed a priori decision. This dynamic adaptation allows the system to optimize for cases where data is already compressed versus cases where local aggregation would be beneficial, resolving the contradiction between reducing data volume and maintaining query processing efficiency.

Inventive Principle:
Principle #15Dynamics

2Reliability

If re-partitioning is performed according to grouping attributes, then correct global aggregation is achieved, but data transfer volume increases when data partitions differ in characteristics

Engineering Contradiction:
Improveaggregation correctnessVSAvoiddata transfer cost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system segments the aggregation process into two distinct phases: local aggregation at each node and global aggregation after re-partitioning. This segmentation allows each phase to handle specific aspects of the problem, reducing the overall data transfer volume while maintaining aggregation correctness. The local aggregation phase processes data locally before transfer, reducing the burden on the global aggregation phase.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary local aggregation at each node before re-partitioning and global aggregation. This preliminary action reduces the data volume that needs to be transferred and processed globally, while still ensuring correctness through the subsequent global aggregation phase. The preliminary local processing prepares the data in an optimized state for the next phase.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If uniform aggregation operations are applied to all nodes, then implementation is simplified, but performance is sub-optimal when data distributions are non-uniform

Engineering Contradiction:
Improveaggregation implementation simplicityVSAvoidsystem resource utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system applies different aggregation strategies to different nodes based on their local data characteristics. Each node independently determines whether to perform local aggregation based on its own data partition properties, rather than all nodes following a uniform approach. This local quality differentiation optimizes system resource utilization while maintaining implementation feasibility through decentralized decision-making.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8700822B2Parallel aggregation system
Publication Date: 2014.04.15 HEWLETT PACKARD ENTERPRISE DEV LP
  • US8700822B2 patent drawing
  • US8700822B2 patent drawing
  • US8700822B2 patent drawing

AI summary

A parallel aggregation system includes a data analysis module to determine a unique key value of a record to be forwarded to a destination. A pre-processing module may determine existence of the record in a buffer and priority of the record in a priority queue. Based on the existence and priority, the pre-processing module may absorb the record in the buffer and selectively forward another record in the buffer to the destination.