Sentinel-Bounded Event Streams for Continuous Reconciliation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing event-driven architectures face challenges in ensuring data reliability, continuity, and integrity of unbounded event streams, particularly in financial services, due to the lack of defined boundaries and potential for tampering or loss of events.
Innovation Solution
A reconciliation framework is implemented where producers convert unbounded event streams into bounded, self-reconcilable streams by injecting boundary markers (sentinels) that include reconciliation rules, allowing consumers to verify event delivery and integrity through producer-generated attributes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If event-driven architectures use unbounded event streams for real-time processing, then processing speed and responsiveness are improved, but data reliability and integrity cannot be ensured
Solution Approach 1:
The patent divides the unbounded event stream into bounded windows with defined start and end points. Each window contains a finite subset of events that can be independently processed and reconciled. This segmentation allows the system to maintain real-time processing capabilities while ensuring data reliability through bounded reconciliation units.
Solution Approach 2:
The patent implements preliminary actions by adding sentinel events (markers) at the beginning and end of each window before events are processed. These sentinels contain reconciliation attributes that enable downstream systems to verify event integrity. The reconciliation framework is established in advance, allowing verification to occur automatically as events flow through the system.
2Reliability
If event streams are made bounded with reconciliation rules, then data integrity is improved, but system complexity increases
Solution Approach 1:
The patent introduces sentinels as intermediary elements that carry reconciliation information between the event producer and consumer systems. These sentinels act as mediators that encode integrity constraints and attributes without requiring complex verification logic in the downstream systems. The reconciliation framework is encapsulated within the sentinel structure, simplifying the overall system architecture.
Solution Approach 2:
The reconciliation framework is designed to be self-service, where the sentinels and reconciliation attributes automatically enable verification without requiring external intervention or complex coordination. Downstream systems can independently verify event integrity by checking the reconciliation attributes against the sentinels, reducing the need for additional complexity in event validation logic.
3Measurement precision
If reconciliation attributes are added to events, then event verification capability is improved, but data loss risk increases
Solution Approach 1:
The patent creates copies of essential event attributes and stores them within the sentinel structures. Rather than modifying the original events, the reconciliation framework copies critical attributes (such as event counts, time ranges, and identifiers) into the sentinels. This copying approach enables verification without altering the original event data, preventing data loss while maintaining verification capability.
Data Source
AI summary
A computing system is configured to (i) detect a window open sentinel indicating one or more reconciliation rules for a window within an unbounded stream of events, (ii) detect a shard open sentinel indicating one or more reconciliation rules for the shard, (iii) receive a set of events produced within the shard, (iv) detect a shard close sentinel indicating producer-generated reconciliation attribute(s) for the shard, (v) execute the reconciliation rules for the shard to thereby generate consumer-generated reconciliation attribute(s) for the shard, (vi) reconcile the consumer-generated reconciliation attributes for the shard against the producer-generated reconciliation attributes for the shard, (vii) detect a window close sentinel indicating producer-generated reconciliation attribute(s) for the window, (viii) execute the reconciliation rules for the window to thereby generate consumer-generated reconciliation attribute(s) for the window, and (ix) reconcile the consumer-generated reconciliation attribute(s) for the window against the producer-generated reconciliation attribute(s) for the window.


