Split Message Store Consistent Reads via Client Front-End

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current messaging systems face inefficiencies in message storage and retrieval, particularly in maintaining consistency and performance across split message stores, and in handling updates across multiple devices, leading to reduced responsiveness and increased operating costs.

Innovation Solution

The implementation of a client front-end component that receives messages, identifies the sending client service, and stores them in a message queue using a service identifier index value, while delaying message body storage until metadata storage is successful, and using a message cache to ensure up-to-date message retrieval by applying updates from a message queue when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If message metadata is stored immediately in a metadata store, then message storage speed is improved, but data consistency may be compromised if the message body storage fails

Engineering Contradiction:
Improvemessage storage speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary validation and preparation of message data before storage, organizing metadata and message bodies into a coordinated storage sequence. The client front-end component prepares message data structures and validates integrity before initiating storage operations, ensuring that if any part of the storage process fails, the preliminary prepared data can be used to maintain consistency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the storage status of message bodies is monitored and used to control metadata storage operations. The metadata store receives feedback about message body storage success or failure, and adjusts its storage actions accordingly - only committing metadata storage when message body storage is confirmed successful, thereby maintaining data consistency while preserving overall storage efficiency.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If messages are stored in a split message store with separate metadata and body stores, then storage flexibility and performance are improved, but maintaining consistency between metadata and body becomes more complex

Engineering Contradiction:
Improvestorage flexibilityVSAvoidconsistency management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary coordination layer (the client front-end component and message queue system) that manages the split between metadata store and message body store. This intermediary receives complete messages, separates them into metadata and body components, coordinates their respective storage operations, and ensures consistency through controlled sequencing and feedback loops, thereby managing the complexity of split storage without sacrificing flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If message updates are applied immediately to all devices, then data freshness is improved, but network bandwidth consumption and system load increase

Engineering Contradiction:
Improvedata freshnessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The system applies partial updates by sending only the necessary message update data to devices rather than complete message sets. The update mechanism determines which specific messages or message attributes need updating and transmits only those partial updates, maintaining data freshness at devices while reducing network bandwidth consumption and system load compared to full message retransmission.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10642877B2Techniques for consistent reads in a split message store
Publication Date: 2020.05.05 META PLATFORMS INC
  • US10642877B2 patent drawing
  • US10642877B2 patent drawing
  • US10642877B2 patent drawing

AI summary

Techniques for consistent reads in a split message store are described. In one embodiment, an apparatus may comprise a client front-end component of a messaging system operative to receive a messaging client update request from a messaging client on a client device; and provide a message metadata set and a message body set to the messaging client on the client device in response to the messaging client update request; and a message cache component of the messaging system operative to retrieve the message metadata set from a metadata store of the messaging system, the message metadata set associated with a metadata set most-recent sequence identifier for the message metadata set; and retrieve the message body set from a message store of the messaging system, wherein retrieving the message body set from the message store comprises providing the metadata set most-recent sequence identifier for the message metadata set to the message store. Other embodiments are described and claimed.