Ready to get started?

Learn more or sign up for a free trial:

CData Sync

Replicate Cosmos DB Data to Multiple Databases



Replicate Cosmos DB data to disparate databases with a point-and-click configuration.

Always-on applications rely on automatic failover capabilities and real-time access to data. CData Sync integrates live Cosmos DB data into your mirrored databases, always-on cloud databases, and other databases such as your reporting server: Automatically synchronize with remote Cosmos DB data from Windows.

Configure Replication Destinations

Using CData Sync, you can replicate Cosmos DB data to any number of databases, both cloud-based and on-premises. To add a replication destination, navigate to the Connections tab.

For each destination database:

  1. Click Add Connection.
  2. Select a destination. In this article, we use SQLite.
  3. Enter the necessary connection properties. To replicate Cosmos DB to a SQLite database, enter a file path in the Data Source box.
  4. Click Test Connection to ensure that the connection is configured properly.
  5. Click Save Changes.

Configure the Cosmos DB Connection

You can configure a connection to Cosmos DB from the Connections tab. To add a connection to your Cosmos DB account, navigate to the Connections tab.

  1. Click Add Connection.
  2. Select a source (Cosmos DB).
  3. Configure the connection properties.

    To obtain the connection string needed to connect to a Cosmos DB account using the SQL API, log in to the Azure Portal, select Azure Cosmos DB, and select your account. In the Settings section, click Connection String and set the following values:

    • AccountEndpoint: The Cosmos DB account URL from the Keys blade of the Cosmos DB account
    • AccountKey: In the Azure portal, navigate to the Cosmos DB service and select your Azure Cosmos DB account. From the resource menu, go to the Keys page. Find the PRIMARY KEY value and set AccountKey to this value.
  4. Click Connect to ensure that the connection is configured properly.
  5. Click Save Changes.

Configure Replication Queries

CData Sync enables you to control replication with a point-and-click interface and with SQL queries. For each replication you wish to configure, navigate to the Jobs tab and click Add Job. Select the Source and Destination for your replication.

Replicate Entire Tables

To replicate an entire table, click Add Tables in the Tables section, choose the table(s) you wish to replicate, and click Add Selected Tables.

Customize Your Replication

You can use a SQL query to customize your replication. The REPLICATE statement is a high-level command that caches and maintains a table in your database. You can define any SELECT query supported by the Cosmos DB API. To customize your replication, click Add Custom Query in the Tables section and define the Query Statement.

The statement below caches and incrementally updates a table of Cosmos DB data:

REPLICATE Customers;

You can specify a file containing the replication queries you want to use to update a particular database. Separate replication statements with semicolons. The following options are useful if you are replicating multiple Cosmos DB accounts into the same database:

  • Use a different table prefix in the REPLICATE SELECT statement:

    REPLICATE PROD_Customers SELECT * FROM Customers;
  • Alternatively, use a different schema:

    REPLICATE PROD.Customers SELECT * FROM Customers;

Schedule Your Replication

In the Schedule section, you can schedule a job to run automatically, configuring the job to run after specified intervals ranging from once every 10 minutes to once every month.

Once you have configured the replication job, click Save Changes. You can configure any number of jobs to manage the replication of your Cosmos DB data to disparate on-premises, cloud-based, and other databases.