Multi-thread Message Processing with Queue Threshold Suspension

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern data centers face challenges in efficiently processing large volumes of machine-generated data due to the unstructured nature of the data, which complicates indexing and searching operations, especially as the number of hosts and clients grows.

Innovation Solution

A data aggregation and analysis system that asynchronously processes messages from multiple servers, utilizing a search daemon to distribute search requests across search peers, perform pre-processing, and aggregate results efficiently, employing map-reduce techniques and late-binding schema for flexible data processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is processed in a centralized manner, then system simplicity is maintained, but processing efficiency deteriorates as data volume increases

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the centralized data processing system into multiple distributed worker nodes that independently process data subsets. Each worker node handles a portion of the data load, enabling parallel processing across the network. This segmentation resolves the contradiction by distributing processing tasks to improve efficiency while maintaining relative simplicity through modular node design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimensional centralized processing model to a multi-dimensional distributed architecture where data flows through multiple dimensions including worker nodes, job queues, and result aggregation layers. This dimensional expansion enables efficient handling of large data volumes by utilizing networked distributed resources without proportionally increasing system complexity.

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

2Loss of information

If unstructured data is processed using traditional indexing methods, then processing speed is maintained, but the ability to extract semantic meaning deteriorates

Engineering Contradiction:
Improvesemantic meaning retentionVSAvoidindexing and searching efficiency
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent introduces an intermediary layer between raw unstructured data and the indexing system. This intermediary performs semantic analysis and transformation, converting unstructured data into structured representations that retain semantic meaning while being suitable for efficient indexing and searching operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary semantic processing and data transformation before the main indexing operation. By pre-processing unstructured data to extract and organize semantic information in advance, the system maintains both semantic meaning and processing efficiency, as the subsequent indexing operates on already-structured data.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If data is processed synchronously, then result accuracy is ensured, but processing time increases

Engineering Contradiction:
Improveprocessing timeVSAvoidprocessing consistency
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent implements periodic synchronization and checkpoint mechanisms in the distributed processing system. Worker nodes periodically synchronize their processing states and validate results, ensuring consistency and reliability while allowing asynchronous processing to continue between synchronization points, thus reducing overall processing time.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent incorporates feedback mechanisms where worker nodes report processing status and results to a central coordinator, which validates and manages job progression. This feedback loop ensures processing consistency and reliability while enabling parallel asynchronous execution, resolving the contradiction between speed and accuracy.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11184467B2Multi-thread processing of messages
Publication Date: 2021.11.23 CISCO TECHNOLOGY INC
  • US11184467B2 patent drawing
  • US11184467B2 patent drawing
  • US11184467B2 patent drawing

AI summary

Systems and methods for multi-thread processing of messages. An example method comprises: receiving, by a first processing thread, a plurality of network packets from a server; processing the plurality of network packets to produce a message; writing the message to a message queue; retrieving, by a second processing thread, the message from the message queue; producing a memory data structure based on the message; placing the memory data structure into a result queue; and responsive to determining that a total size of messages in the message queue exceeds a certain threshold, causing the first processing thread to suspend receiving network packets.