Messaging Client Data Replication via Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing messaging services face inefficiencies in data storage and transfer due to significant duplication of media items, which increases bandwidth usage and storage requirements, and challenges in data replication and relocation across storage devices.

Innovation Solution

Implementing a system where messaging clients act as distributed stores of data items, allowing popular media items to be replicated and transferred efficiently by uploading from client devices to destination storage devices, rather than relying solely on source storage devices, thereby optimizing bandwidth usage and storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data items are stored and replicated across multiple network storage devices, then data availability and reliability are improved, but bandwidth consumption and storage costs increase

Engineering Contradiction:
Improvedata availabilityVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Client devices that already have data items stored locally are leveraged to upload and replicate data to destination storage devices when sharing occurs, rather than requiring centralized server-initiated replication. This self-service approach utilizes existing client-uploaded data to automatically populate backup locations, reducing the need for dedicated replication bandwidth while maintaining data availability across the network.

Inventive Principle:
Principle #25Self-service

2Reliability

If data items are replicated from source storage device to destination storage device, then data availability is improved, but transfer time and system complexity increase

Engineering Contradiction:
Improvedata availabilityVSAvoidtransfer time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Data items are uploaded to the messaging service and stored in advance by client devices before they are needed for replication. When a sharing event occurs, the system checks whether the data is already available in the network storage from previous uploads, eliminating the need for time-consuming transfer operations at the moment of sharing and enabling immediate data availability.

Inventive Principle:
Principle #10Preliminary action

3Stability of the object's composition

If centralized server performs all data replication, then data consistency is maintained, but server load and operational costs increase

Engineering Contradiction:
Improvedata consistencyVSAvoidserver capacity
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The data replication function is segmented between the messaging service server and client devices. The server maintains coordination and consistency tracking, while individual client devices perform the actual data upload and replication operations to destination storage devices. This segmentation distributes the operational load away from the centralized server, reducing its burden while maintaining data consistency through coordinated management.

Inventive Principle:
Principle #1Segmentation

4Loss of information

If client devices upload data items frequently, then data freshness is improved, but network bandwidth consumption increases

Engineering Contradiction:
Improvedata freshnessVSAvoidbandwidth consumption
Core Design Contradiction:
Loss of informationVSLoss of energy

Solution Approach 1:

Instead of requiring complete re-uploads of data items on every sharing event, the system performs partial actions by checking whether data already exists in the network storage from previous uploads. Only when data is missing or outdated does the system initiate uploads from client devices. This selective approach maintains data freshness by ensuring data availability when needed while avoiding redundant bandwidth consumption from unnecessary repeated uploads.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9948580B2Techniques to replicate data using uploads from messaging clients
Publication Date: 2018.04.17 WHATSAPP LLC
  • US9948580B2 patent drawing
  • US9948580B2 patent drawing
  • US9948580B2 patent drawing

AI summary

An apparatus may include a messaging server component operative to determine a sharing event for a data item, the sharing event associated with a source client device with a local storage of the data item. The apparatus may request that the source client device upload the data item to a destination storage device in response to a determination that network storage of the data item is scheduled for relocation from a source storage device to the destination storage device. The apparatus may include a storage management component operative to determine that the network storage of the data item is scheduled for relocation from a source storage device to a destination storage device and de-schedule the relocation of the data item.