Using Data Replication to Enable Operational Synchronization

In my last post, we looked at some common use cases for operational synchronization, and each of those examples were effectively abstractions of scenarios in which there is benefit in establishing consistency and currency among either logically or physically distinct data assets. For example, creating a holistic and complete view of shared data entities is critical to any distributed master data management repository or distributed identity management service.

Fortunately, operational synchronization is yet another functional practice that is enabled through the use of a time-tested technology, data replication. Some of the key characteristics of a replication technology that makes it a suitable choice for operational synchronization include:

  • Simplicity in ease of implementation – a good data replication solution simplifies the process of modeling topologies and connections, designing mappings between data assets, along with other aspects of implementation, administration, and oversight. Differentiate between those that only provide command-line operations or parameterized scripts and those that provide configurability via GUI-based tools as well as providing reusable components that can be deployed directly as services.
  • Performance scalability – solutions that take advantage of multithreading and task parallelism will enable synchronization to scale across large volumes. This also provides rapidity in data exchange to support large scale replication. Look for methods of automation for parallelism across commodity components and parallel data exchange that enhance scalability; this helps to both reduce effort and decrease costs.
  • Change data capture – using a data replication technology based on log-based change data capture for continuous incremental synchronization reduces the work necessary for maintaining cross-platform consistency and enables continuous updates in an non-intrusive way.
  • Platform independence – there will be many different types of hardware, software, database, and data models that will be subjected to synchronization. Look for solutions that support a broad range of heterogeneous systems.
  • Reliability/Recoverability – being able to continue or restart synchronization in the presence of component failures transparently to the user community provides reliability, recoverability, and resolution of any collisions or conflicts, again in a non-intrusive manner.

In other words, establishing a framework for consistent and reliable operational synchronization means using these criteria as a “yardstick” for comparing solutions.


Tell me what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!