Introduction

InstantdbSync is a real-time data replication/synchronization and change data capture solution that instantly propagates transactional changes from a source database to a target database. InstantdbSync monitors the source database in real-time for events that affect data in the source table, such as updates, inserts and deletes, and instantly propagates the changes to the target table in real-time, as the events occur.  

InstantdbSync is a best of breed, enterprise application, which provides an easy-to-use graphical interface to deploy transactional replication with sub second speed. The GUI interface make creation and configuration of the replication jobs from the source to target database servers simple and easy.

 

 

 

The Business Case

In today’s world of increasing data volumes and Big Data, we are seeing databases that are designed to store and process hundreds or millions of fields, handle large volumes of data, and manage high-speed transactions, all while they house the critical business data needs of today's fast-paced companies. With the databases of today, applications are able to save and retrieve complex data structures in a single physical record and in a single operation.  Today’s databases have significant transactional performance advantages over traditional databases, which would require several joins between many tables to accomplish the same task.

While some databases excel in transactional performance, other databases excel in analytical capability. Relational databases have a large selection of analytical and reporting tools available for companies to use. The InstantdbSync solution gives companies the ability to seamlessly move data from a source database to any number of relational, non-relational, Cloud, desktop,  or in memory databases for easier access, data reporting, and analysis.

 

The Options

There are several ways to move relational data to another database:

1. The extract and load approach

Most relational databases have "bulk mode" import tools that will read data from a text or binary file and place it into the database. A program is written to extract the data into a text file (using the same formats as the relational schema) and transfer the text files from the source database system to the target database system. The relational database table schemas are manually created and a database utility is run to load the files into the table(s).

This was the common approach used in the past simply because there was no other way to accomplish the task.  But there are several problems with this option:

  1. There are many manual steps involved in the process.  

  2. Only a snapshot of the data is moved into the relational database. Each time current data is required in the target database, the process must be repeated.

2. Using the relational database vendors ETL tools

Many relational databases, such as Oracle, SQL Server, and DB2, have GUI-based tools that make it easy to move data from other relational sources into their database using an OLEDB or ODBC driver. SQL Server is an example of a relational database that comes with a set of powerful data management tools. Using SQL Server Integration Services (SSIS) combined with an OLEDB Driver for a given data source, it only takes a few clicks to move a snapshot of the source data into the target SQL Server.

These tools make the extraction and load of the data very easy in comparison to bulk loading data, but there are still problems:

  1. It's a manual process.

  2. It's a data snapshot. The process must be repeated every time current data is needed.

3. The real-time change data capture approach

Change data capture detects changes to data on a source database and replicates those changes to a target database in real-time (sub-second replication). InstantdbSync can replicate data from one a source database to another similar database for backup or disaster recovery purposes. It can also replicate source data to over 100 supported target databases.

There are two advantages to this technology:

  1. "Fire and forget." Once the replication has been established, no further effort or manual steps are required. The replication will continue to run in the background until otherwise directed.

  2. The data in the replicated database or the target database is not a one-time snapshot, but rather a living copy of the data that is kept in real-time synchronization with the source data. This allows transactional applications to continue to benefit from a source database with high-speed performance and opens the door for using SQL-based data analysis and reporting tools against the relational target copy.