Data Warehouse Aggregation Partitioning for Report Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processing large amounts of data for business decision-making is computationally intensive, especially when multiple aggregation operations are performed on the same data, making it difficult to generate reports efficiently in data warehouses.

Innovation Solution

A system architecture that employs multiple aggregation processors to process separate partitions of data, applying and merging intermediate results to efficiently generate reports, while minimizing data access overhead through customized plug-in processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple aggregation operations are performed on the same large amount of data, then comprehensive business analysis is achieved, but computational intensity and processing time increase significantly

Engineering Contradiction:
Improvecomprehensive business analysisVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent divides the large dataset into multiple partitions and assigns different aggregation operations to different aggregation processors. Each processor handles a specific partition and aggregation type independently, allowing parallel processing. This segmentation resolves the contradiction by enabling comprehensive analysis through multiple aggregation operations while reducing overall processing time through parallel execution rather than sequential processing of the entire dataset for each aggregation.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If all available facts are accessed and processed to accomplish aggregation operations, then accurate aggregate values are obtained, but data access overhead and computational cost increase

Engineering Contradiction:
Improveaggregate value accuracyVSAvoidcomputational cost
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent segments the data warehouse into multiple partitions and assigns each partition to a dedicated aggregation processor. This allows the system to access and process only the relevant partition data for each aggregation operation rather than scanning all available facts. The segmentation maintains measurement precision by ensuring complete processing of relevant data while reducing computational cost through avoided access to unrelated data partitions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary data partitioning and pre-positions data in the data warehouse before aggregation operations are executed. By organizing data into partitions in advance and assigning them to specific aggregation processors, the system eliminates the need to access and filter all available facts during the aggregation operation itself. This preliminary action maintains accuracy by ensuring all relevant data is included while significantly reducing the computational overhead of data access during query execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7809735B2Infrastructure for more efficient processing to generate of ad-hoc reports
Publication Date: 2010.10.05 X CORP
  • US7809735B2 patent drawing
  • US7809735B2 patent drawing
  • US7809735B2 patent drawing

AI summary

Reports, based on aggregation operations on data in a data warehouse, may be efficiently generated. At least two separate aggregation processes are performed on facts of a fact table. Each of a plurality of aggregation processors accesses a separate partition of the facts of the fact table. Each aggregation processor applies the at least two separate aggregation processes are applied to the partition of the facts accessed by that aggregation processor and, for each of the at least two separate aggregation processes, an intermediate result of applying that separate aggregation process by that aggregation processor is saved. For each of the at least two separate aggregation processes, the intermediate results, of applying the aggregation processing for that process by the aggregation processors, are merged.