State Machine Pattern Matching in Object Data Streams
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies lack an efficient means to apply pattern-based search principles to object-oriented data, specifically maintaining a stateful search process that compares search patterns against the contents and attributes of data objects over time, while tracking changes in objects.
Innovation Solution
A system and method utilizing a syntax, parser, and state machine to identify patterns in data objects, where the syntax defines relationships between data objects, the parser converts patterns into an abstract syntax tree, and the state machine matches objects containing elements of the pattern in a stream of data, maintaining an internal state model to track changes and updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If regular expression-based pattern matching is applied to object-oriented data, then pattern search capability is improved, but the system lacks stateful tracking of object changes over time
Solution Approach 1:
The patent transforms static pattern matching into a dynamic stateful process by introducing state machines that evolve through multiple states as they process data objects. Each state machine maintains internal state information that persists across object comparisons, enabling tracking of object changes over time while preserving pattern search functionality.
Solution Approach 2:
The patent introduces state machines as intermediary components between the pattern matcher and the data objects. These state machines serve as mediators that hold and manage state information, bridging the gap between simple pattern matching and complex object change tracking by maintaining historical context in their internal states.
2Loss of information
If a stateful search process is implemented to track object changes, then object change tracking is improved, but system complexity increases
Solution Approach 1:
The patent divides the complex pattern matching system into multiple independent state machines, each responsible for tracking specific patterns. This segmentation allows the system to manage complexity by distributing state management across multiple simple, modular components rather than requiring one complex centralized system.
Solution Approach 2:
The patent creates copies of state machines for different pattern instances, allowing each to independently track its own state. This copying approach simplifies the overall system design by using multiple simple replicated units rather than one complex unit, as each copy maintains only the minimal state necessary for its specific pattern.
3Measurement precision
If multiple state machines are created to handle pattern elements, then pattern matching accuracy is improved, but memory consumption increases
Solution Approach 1:
The patent implements a lifecycle management strategy where state machines are created when needed for specific pattern elements and discarded when their matching task is complete. This approach allows the system to maintain high pattern matching accuracy through multiple state machines while controlling memory consumption by recovering and reusing memory resources once state machines have served their purpose.
Data Source
AI summary
A system and method for applying extended regular expressions against arbitrary data objects, wherein a state machine maintains an internal state model for the system, an object analysis server receives data objects from a data source, and the object analysis server analyzes the structure and contents of the objects, compares them against received search pattern, and directs the state machine to update the state model based on either or both of the analysis and comparison operations.


