Streaming Search Routing Keys for Ordered Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems struggle to maintain temporal ordering of data while performing parallel processing, leading to inaccurate search results due to out-of-order data processing.

Innovation Solution

A streaming search system that uses routing keys to ensure temporal ordering of data by routing related payloads through the same data streams, queues, and processing threads, allowing for parallel processing without disrupting the order in which the data was generated.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If parallel processing is performed on data streams, then productivity is improved, but data ordering is lost leading to inaccurate search results

Engineering Contradiction:
Improveprocessing throughputVSAvoiddata ordering accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments data streams into multiple independent streams, each serviced by dedicated index workers. Payloads are routed to specific streams based on routing keys, ensuring that related data remains together while allowing parallel processing across different streams. This segmentation enables both high throughput and maintained ordering within each segment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces routing keys as intermediary elements that mediate between incoming payloads and data streams. These routing keys act as mediators that ensure payloads are directed to the appropriate stream while maintaining temporal ordering. The routing key mechanism allows parallel processing to occur without disrupting the original data generation order within each stream.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data is processed in parallel across multiple threads, then processing speed is improved, but temporal ordering between related payloads is disrupted

Engineering Contradiction:
Improveprocessing speedVSAvoidtemporal ordering precision
Core Design Contradiction:
SpeedVSManufacturing precision

Solution Approach 1:

The system divides processing into multiple independent threads, each responsible for a specific data stream or queue. By segmenting the processing workload, the system achieves parallel execution while maintaining temporal ordering within each thread's designated scope. Related payloads with the same routing key are processed sequentially within their assigned thread, preserving temporal relationships.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an additional dimension of organization through routing keys and multiple queues. Instead of a single sequential processing line, the system creates a multi-dimensional processing structure where data can be routed to different queues based on routing keys. This dimensional expansion allows parallel processing across queues while maintaining ordering within each queue dimension.

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

3Productivity

If multiple index workers service the same data stream, then productivity is improved, but data consistency and ordering are compromised

Engineering Contradiction:
Improveindexing throughputVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the workload by assigning different data streams to different index workers. Each worker is responsible for servicing specific streams, preventing multiple workers from competing on the same stream. This segmentation enables parallel processing across workers while maintaining data consistency within each worker's assigned streams.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by allowing different index workers to have specialized responsibilities for different data streams. Each worker optimizes processing for its assigned streams, ensuring high-quality, consistent processing locally. The routing key mechanism ensures that related data is always processed by the same worker, maintaining local consistency while enabling global parallelism.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250330420A1Maintaining stream events order in streaming search system
Publication Date: 2025.10.23 DELL PROD LP
  • US20250330420A1 patent drawing
  • US20250330420A1 patent drawing
  • US20250330420A1 patent drawing

AI summary

Methods and systems for managing data storage are disclosed. To store data, portions of data that are generated may be streamed to a storage system. The storage system may process various portions of data in parallel. To maintain ordering of some portions of the data, routing keys may be used. The routing keys may ensure that ordering between related portions of data is maintained as the portions of data are streamed and processed by the storage system.