SCD Table Rebuild via Concurrent Snapshot Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Sequential processing of large numbers of snapshots for rebuilding or restating Slowly Changing Dimension (SCD) tables is resource intensive, inefficient, and slow, especially when erroneous or missing data renders the table invalid or corrupted.

Innovation Solution

Implementing a merge-update technique that subdivides snapshots into pairs and processes them concurrently, forming a logic tree to efficiently rebuild or recreate SCD tables by merging table segments at multiple levels until a single overall table segment is obtained.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If sequential processing is used to process snapshots for rebuilding SCD tables, then the process is stable and robust, but the processing speed is slow and resource consumption is high

Engineering Contradiction:
Improveprocess stabilityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the snapshots into pairs and processes them concurrently through multiple parallel threads, creating a segmented processing approach that maintains stability while improving speed. Each thread handles specific snapshot pairs independently, allowing parallel execution without compromising the robustness of the overall process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a concurrent processing dimension by using multiple threads to process snapshot pairs simultaneously. This transitions from sequential one-dimensional processing to parallel multi-dimensional processing, significantly improving productivity while maintaining the stable logic through structured thread management and synchronization.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If sequential processing is used to process snapshots for rebuilding SCD tables, then the process is simple to implement, but the time required is excessive

Engineering Contradiction:
Improveimplementation simplicityVSAvoidrestatement time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the processing workload into concurrent threads that handle snapshot pairs in parallel. This segmentation reduces the total processing time significantly while keeping each individual thread's logic simple and manageable, thus reducing time loss without excessive complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges the results from multiple concurrent thread processing into a unified SCD table structure. By combining the outputs of parallel processing with proper synchronization mechanisms, the system achieves fast restatement while maintaining data consistency and structural integrity.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If sequential processing is used to process large numbers of snapshots, then resource consumption is high, but parallel processing requires additional computational resources

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcompute power consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent segments the processing into parallel threads that can utilize multiple CPU cores simultaneously. This segmentation allows the system to process large numbers of snapshots more efficiently by distributing the workload, improving productivity while the resource consumption increases only linearly with the number of active threads rather than sequentially.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent leverages the concurrent processing dimension by executing multiple threads in parallel, effectively utilizing available computational resources. This approach improves processing efficiency by a factor equal to the number of concurrent threads, making the increased resource consumption worthwhile for large-scale snapshot processing.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11403274B1Efficient creation and/or restatement of database tables
Publication Date: 2022.08.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11403274B1 patent drawing
  • US11403274B1 patent drawing
  • US11403274B1 patent drawing

AI summary

Techniques for rebuilding at least a portion of a SCD table in a database based on a set of snapshots individually containing a current value of a variable corresponding to a dimension in the table are discloses herein. In one example, a method includes grouping the snapshots in the set into multiple pairs of snapshots and concurrently generating multiple first table segments individually from a corresponding one of the multiple pairs of snapshots in the set. The method also includes grouping the generated multiple first table segments into multiple pairs of the first table segments and concurrently merging the multiple pairs of first table segments individually into a second table segment. The grouping and concurrently merging operations can be repeated until only one table segment is present.