Client Bookmark Message Synchronization in Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed database systems face inefficiencies in delivering messages due to eventual consistency issues, where clients cannot guarantee the completeness of message stores, leading to delayed message delivery as they wait for a global quorum, which becomes costly as system scale increases.

Innovation Solution

Implementing a method where clients maintain a local 'client bookmark' and 'maximum message ID' to ensure message store completeness, allowing for sync requests to be sent to the server when discrepancies are detected, enabling efficient message delivery by receiving only missing messages and updating the bookmark, thus reducing the need for full system consistency before message delivery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the system waits for global quorum before delivering messages, then message delivery completeness is improved, but message delivery speed deteriorates

Engineering Contradiction:
Improvemessage delivery completenessVSAvoidmessage delivery speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The system performs preliminary actions by maintaining local message stores and bookmarks at each client device before global consistency is achieved. Clients proactively request and store messages locally, updating their bookmarks to track the latest received message ID. This preliminary local caching allows messages to be delivered immediately upon arrival without waiting for global quorum confirmation across all distributed nodes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system segments the monolithic global consistency check into independent client-server synchronization operations. Each client independently manages its own message store and bookmark state, performing local consistency checks against the server rather than participating in a centralized global quorum process. This segmentation allows parallel message delivery to multiple clients without serial dependency on system-wide consistency.

Inventive Principle:
Principle #1Segmentation

2Speed

If the system improves the speed of reaching global quorum, then message delivery speed is improved, but system cost deteriorates

Engineering Contradiction:
Improveglobal quorum achievement speedVSAvoidsystem operational cost
Core Design Contradiction:
SpeedVSLoss of energy

Solution Approach 1:

Clients perform self-service by autonomously managing their own message synchronization with the server. Each client independently requests messages, updates its bookmark, and validates receipt without requiring coordination with other clients or participation in global quorum protocols. This self-service approach eliminates the expensive centralized consistency management infrastructure while ensuring each client receives complete message delivery.

Inventive Principle:
Principle #25Self-service

3Reliability

If clients request all messages from the server, then message completeness is improved, but network bandwidth consumption deteriorates

Engineering Contradiction:
Improvemessage store completenessVSAvoidnetwork data transmission volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system implements feedback mechanisms through bookmarks that clients send to the server during synchronization requests. The bookmark contains the client's current maximum received message ID, providing feedback to the server about what messages the client already has. The server uses this feedback to selectively transmit only the missing messages (those with IDs greater than the bookmark value), avoiding redundant transmission of already-received messages and optimizing network bandwidth utilization.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3602974B1Apparatus and method for maintaining message databases in eventual consistency distributed database systems
Publication Date: 2021.05.05 BLACKBERRY LTD
  • EP3602974B1 patent drawingFigure 1
  • EP3602974B1 patent drawingFigure 2A
  • EP3602974B1 patent drawingFigure 2B

AI summary

A method and electronic device are provided for maintaining a message store having a plurality of messages includes maintaining at the electronic device a client bookmark indicating a point in the message store up to which the content of the message store maintained at the electronic device is known to be complete, and a maximum message identifier (ID) indicating the largest message identifier of the plurality of messages of the message store that the electronic device has received, sending to a server a sync request message for the message store, the sync request message including the client bookmark in response to determining at least one of the client bookmark and the maximum message ID do not match, and the electronic device connecting with the server after a period of being disconnected.