SCD Table Rebuild via Concurrent Snapshot Segmentation
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
3Productivity
If sequential processing is used to process large numbers of snapshots, then resource consumption is high, but parallel processing requires additional computational resources
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.
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.
Data Source
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.


