Heterogeneous Data Replication Engine

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data replication methods are limited in their ability to synchronize and replicate data across diverse devices, requiring both source and destination devices to be of the same type and architecture, and often necessitate shutting down devices for resynchronization after a failure, failing to efficiently handle data changes and pass-through data in real-time across heterogeneous networks.

Innovation Solution

A hardware and operating system-independent software method that replicates data in real-time or near real-time across similar or dissimilar devices, using a data replication engine with concurrent threads to track changes and replicate data without interrupting device operation, allowing configuration refreshes without shutting down devices, and supporting adaptive compression and encryption for efficient data distribution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If existing data replication methods are used, then data synchronization between devices of the same type can be achieved, but the devices must be of the same type and architecture, limiting versatility

Engineering Contradiction:
Improvedevice compatibilityVSAvoiddata synchronization reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The replication software is designed to work across multiple device types and architectures (computers, storage devices, communication devices, sensor devices) by implementing a universal replication protocol that abstracts away hardware-specific details, allowing the same software to replicate data between heterogeneous devices without requiring device-specific implementations

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

2Reliability

If existing replication methods are used, then data can be replicated between devices, but both source and destination devices must be taken out of service for resynchronization after a failure

Engineering Contradiction:
Improveservice availabilityVSAvoiddowntime for resynchronization
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The replication software implements continuous data replication that operates independently of device service status. When a device fails, the replication process detects the failure and automatically resumes synchronization without requiring the device to be taken out of service, ensuring continuous data protection and minimizing downtime through automatic failover and resume capabilities

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If real-time data replication is implemented, then data synchronization occurs as data changes, but the complexity of tracking and replicating changes across heterogeneous devices increases

Engineering Contradiction:
Improvedata synchronization speedVSAvoidreplication process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The replication software introduces an intermediary replication engine that sits between the source and destination devices, managing the complexity of real-time change tracking and data replication. This intermediary component handles change detection, data formatting, transmission, and synchronization logic, shielding users from the underlying complexity while enabling real-time replication across heterogeneous devices through standardized protocols

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7870354B2Data replication from one-to-one or one-to-many heterogeneous devices
Publication Date: 2011.01.11 QUEST SOFTWARE INC
  • US7870354B2 patent drawing
  • US7870354B2 patent drawing
  • US7870354B2 patent drawing

AI summary

Embodiments of the system described herein can be implemented in a software application that runs on a host device or is embedded in a logic or memory device such as a gate array, EEPROM, a control, or dynamical system. The system embodiment allows a set of similar or dissimilar intelligent devices or sensors, which may be interconnected with any type of network or bus, to replicate data between themselves for the purpose of remote backup, redundancy, content distribution, or measurements. The attributes of the data, which may be changed or created on one device or passed through the device, are tracked and journaled in volatile or non-volatile storage in a first phase. This occurs in real-time as the data changes or passes through the device. In a second phase, the attributes that match patterns pre-specified in a configuration are used to decide what changes or the content to replicate to one or more devices. In a third phase, the data is replicated. In practice, the techniques described herein are independent of hardware, operating systems, and applications. The example embodiment is designed to be transparent for system redundancy and error recovery processes such as error correction, retransmission on links, and raid reconfiguration.