Mobile Data Synchronization Segmentation and Pre-caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing client-server systems are inefficient in handling data synchronization between mobile clients and database systems, as they often require large data sets that overwhelm mobile devices and do not leverage the capabilities of different client types, leading to slow performance and inadequate data handling.

Innovation Solution

The system breaks synchronization requests into multiple smaller requests, executes different code routines based on client type, and pre-caches user data to optimize data transfer, allowing for near real-time updates on mobile devices while providing complete data sets to desktop clients.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the system sends complete data sets to all clients, then desktop clients can access all data, but mobile clients are overwhelmed by large data sets

Engineering Contradiction:
Improvedata quantityVSAvoiddevice overload
Core Design Contradiction:
Quantity of substanceVSObject-affected harmful factors

Solution Approach 1:

The patent segments synchronization requests into multiple smaller requests based on data types (e.g., feed items, user data, business data). The server divides the complete data set into distinct categories and sends them separately to mobile clients, preventing device overload while ensuring data completeness. This segmentation allows mobile devices to process data in manageable chunks rather than receiving a monolithic large data set.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements client-type-specific data handling where the server adapts the synchronization strategy based on whether the client is mobile or desktop. Mobile clients receive prioritized, segmented data sets focused on critical information, while desktop clients receive complete data sets. This local quality approach tailors the data delivery to match each client type's capabilities and needs.

Inventive Principle:
Principle #3Local quality

2Productivity

If the system processes all synchronization requests sequentially, then data is retrieved in a single operation, but response time increases for mobile clients

Engineering Contradiction:
Improvesynchronization speedVSAvoidresponse time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the synchronization process into parallel operations for different data types. Instead of processing all data sequentially, the server simultaneously retrieves feed items, user data, and business data through separate database queries. This parallel processing approach reduces total response time while maintaining data completeness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements pre-caching of frequently accessed data (such as feed items) before they are explicitly requested. The server proactively retrieves and stores this data in a cache layer, so when a mobile client requests synchronization, the data is already available or can be retrieved faster, reducing response time without requiring sequential processing.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the system uses a single synchronization routine for all client types, then implementation is simple, but it cannot leverage different client capabilities

Engineering Contradiction:
Improveclient capability adaptationVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal synchronization server that handles multiple client types through a single unified architecture. The server uses a common synchronization framework that can adapt its behavior based on client type, eliminating the need for separate synchronization systems for mobile and desktop clients. This multi-functional approach maintains simplicity while enabling capability adaptation.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent implements dynamic code routing where the server selects different code routines based on the client type identifier. The synchronization system dynamically adjusts its behavior - choosing between mobile-optimized routines (segmented, prioritized data) and desktop routines (complete data sets) - based on the incoming request's client type. This dynamic adaptation enables versatility without requiring multiple static systems.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9626419B2Optimizing data synchronization between mobile clients and database systems
Publication Date: 2017.04.18 SALESFORCE INC
  • US9626419B2 patent drawing
  • US9626419B2 patent drawing
  • US9626419B2 patent drawing

AI summary

Mechanisms and methods are provided for optimizing data synchronization between clients and database systems. These mechanisms and methods provide optimizations for synchronization requests, by either breaking a synchronization request into multiple smaller requests, or by executing different code routines for differing client types, or by pre-caching data that a user is anticipated to want at a future point. Such optimization techniques can enable clients with varying capacities (e.g., mobile client vs. full desktop client) to optimally utilize their respective device capabilities.