Merge Window Segments Sorted Lists Into Hot And Cold Heaps

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approaches for merging multiple sorted lists in distributed computing systems, such as naïve and heap-based methods, face inefficiencies in terms of computational complexity and memory usage, particularly when dealing with large datasets, leading to increased latency and resource strain.

Innovation Solution

The technique involves using a 'merge window' to separate lists into multiple heaps, where lists overlapping the window are placed in an active 'hot' heap and those not overlapping are in an inactive 'cold' heap, reducing unnecessary comparisons and memory usage by identifying irrelevant lists and optimizing heap operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If heap-based merging is used to merge multiple sorted lists, then sorting capability is improved, but memory usage and computational complexity increase significantly

Engineering Contradiction:
Improvesorting capabilityVSAvoidmemory usage
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The patent segments the set of lists to be merged into multiple groups, where each group is processed by a separate heap data structure. This segmentation reduces the number of elements each heap must manage, thereby reducing memory usage and computational complexity while maintaining sorting capability through coordinated processing of multiple heaps.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of organization by grouping lists into segments and assigning each segment to a separate heap. This dimensional change from a single heap managing all lists to multiple heaps managing segmented groups reduces the operational complexity and memory footprint of each individual heap while preserving the overall sorting function.

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

2Reliability

If traditional merging methods are used on large datasets, then completeness of data processing is improved, but processing latency increases

Engineering Contradiction:
Improvecompleteness of data processingVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

By dividing the large dataset into multiple segments processed in parallel by separate heaps, the patent reduces processing latency while ensuring completeness through systematic coordination of all segments. Each heap processes its assigned segment independently and efficiently, and the results are combined to produce the complete sorted output.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by having each heap process only its assigned segment of the data rather than all data. This partial processing approach reduces the computational burden and latency for each heap while the collective action of all heaps ensures complete processing of the entire dataset.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If all lists are kept in active memory for merging, then access speed is improved, but memory utilization increases unnecessarily

Engineering Contradiction:
Improveaccess speedVSAvoidmemory utilization
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments the lists into groups that fit within available memory resources, with each segment managed by a separate heap. This segmentation enables efficient in-memory access for active segments while allowing less critical segments to be stored in external storage, thereby reducing overall memory utilization while maintaining fast access speeds for actively processed data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by keeping only the actively processed segment in memory with fast access, while other segments can be stored in slower external storage. This creates different quality levels of storage access matched to the actual needs of the processing workflow, optimizing both speed and memory utilization.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11726743B2Merging multiple sorted lists in a distributed computing system
Publication Date: 2023.08.15 CLOUDERA INC
  • US11726743B2 patent drawing
  • US11726743B2 patent drawing
  • US11726743B2 patent drawing

AI summary

A technique is described for merging multiple lists of ordinal elements such as keys into a sorted output. In an example embodiment, a merge window is defined, based on the bounds of the multiple lists of ordinal elements, that is representative of a portion of an overall element space associated with the multiple lists. Lists of elements to be sorted can be placed into one of at least two different heaps based on whether they overlap the merge window. For example, lists that overlap the merge window may be placed into an active or “hot” heap, while lists that do not overlap the merge window may be placed into a separate inactive or “cold” heap. A sorted output can then be generated by iteratively processing the active heap. As the processing of the active heap progresses, the merge window advances, and lists may move between the active and inactive heaps.