Adaptive Data Synchronization via Operational State Allotment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data synchronization implementations across multiple devices often fail to adapt to varying device form factors and resource availability, leading to suboptimal user experiences and inefficient resource usage, as they are typically designed for the least resource robust platform.

Innovation Solution

An operating system determines the operational state of a computing device and assigns a synchronization allotment to application modules, allowing the synchronization engine to implement a tailored synchronization scheme based on available resources, such as processing power, network connectivity, and power state, to optimize data synchronization across different devices and conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data synchronization is implemented across multiple devices, then data availability and user experience are improved, but resource consumption and battery life are worsened

Engineering Contradiction:
Improvedata availabilityVSAvoidbattery consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system dynamically adjusts synchronization behavior based on real-time operational state assessment. The operating system evaluates current device state (power level, activity level, network connection) and modifies synchronization parameters accordingly, allowing the system to adapt between aggressive synchronization when resources are abundant and conservative synchronization when resources are constrained

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes synchronization parameters (frequency, scope, data volume) based on operational state. When the device is in a low-power state or has limited resources, the system reduces synchronization frequency and data transfer volume, thereby maintaining data availability while reducing battery consumption

Inventive Principle:
Principle #35Parameter changes

2Reliability

If synchronization frequency is increased to improve data freshness, then data synchronization quality is improved, but resource usage and processing load are worsened

Engineering Contradiction:
Improvesynchronization qualityVSAvoidresource usage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically adjusts synchronization frequency based on operational state. When the device has high power levels and is actively being used, synchronization occurs more frequently to maintain data freshness. When the device is in low-power mode or idle, synchronization frequency is reduced, optimizing the balance between synchronization quality and resource efficiency

Inventive Principle:
Principle #15Dynamics

3Reliability

If full data synchronization is performed, then data completeness is improved, but network bandwidth consumption and synchronization time are worsened

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

Solution Approach 1:

The system performs partial synchronization by transferring only the data necessary to achieve adequate synchronization quality. Instead of always syncing all data, the system assesses operational state and transfers only critical or changed data, thereby maintaining data completeness where needed while reducing network bandwidth consumption and synchronization time in other scenarios

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10491535B2Adaptive data synchronization
Publication Date: 2019.11.26 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10491535B2 patent drawing
  • US10491535B2 patent drawing
  • US10491535B2 patent drawing

AI summary

In one embodiment, an application module 114 may adjust a synchronization scheme 306 based on the operational state of a computing device 110. An operating system 112 may determine an operational state for a computing device 110. The operating system 112 may assign a synchronization allotment 304 to the application module 114 based on the operational state. A synchronization engine 116 of the application module 114 may implement a synchronization scheme 306 based on the synchronization allotment 304.