A synchronization group is two or more databases that are logically grouped together for the purpose of synchronizing specified tables, columns and rows common to each.
This article walks you through the sync group configuration process where you specify the databases, tables and optionally rows to synchronize. You also specify the synchronization schedule if you want regular synchronizations and define the collision resolution policy.
See the article SQL Azure Data Sync Create a Sync Group for the flow of all the steps to create a sync group.
Provisioned a SQL Azure Data Sync server - SQL Azure Data Sync Provision a SQL Azure Data Sync Server.
Created and named the sync group - SQL Azure Data Sync Create a Sync Group.
Added a SQL Azure hub database to the sync group - SQL Azure Data Sync Add a SQL Azure Hub Database.
Added one or more other databases to the sync group.
Add SQL Azure databases - SQL Azure Data Sync Add a SQL Azure Member Database
Add SQL Server databases - SQL Azure Data Sync Add a SQL Server Member Database
From the dropdown select the time units of measure for the synchronization schedule. (Figure 1:1) There are four options
Minutes
Hours
Days
Month
Enter the number of time units between synchronization jobs. (Figure 1:2)
Check the Enable checkbox to enable the sync group.(Figure 1:3)
From the dropdown select the conflict resolution policy for this sync group. (Figure 1:4) A conflict exists when changes are made to the same field in multiple databases between synchronizations. As these changes are written to the hub during a sync job the conflict resolution policy determines which changes are kept and which are lost.
There are two options:
Hub Wins The first change in a field written to the hub is the change that is kept, all others are lost.
Client Wins Every attempt to write a change to a field to the hub is successful. Thus only the last written change is kept, overwriting all previous changes.
Figure 1: Set the sync schedule and conflict resolution policy
SQL Azure Data Sync Preview does not support multiple tables with the same name when they are in different schemas. Multiple tables with the same name result in erroneous data in the tables.
You cannot add tables with circular references, either referring directly to itself or circularly through other tables in this or other sync groups. Circular references result in a synchronization loop.
When you try to add a table whose name contains a period (.) to a sync data set in a sync group, the UI displays only the end name of the table. For example, when you try to add dbo.Test.DataAB table to a sync data set, the UI actually displays dbo.DataAB. If you go ahead and add this table to the sync data set and create the sync group, you won't see any error message. However, provisioning will not occur for the table and also the table dbo.Test.DataAB table is not synchronized at runtime.
SQL Azure Data Sync Preview does not support table whose name contains a space character (example: dbo.[Order Details]).
Column of a table in sync set must not be a computed column.
If the total length of schema name and table name (including any square brackets) cannot be greater than 100.
The SQL Azure Data Sync provisioning process does not create a collation on a primary key column in the destination database even though the collation exists on the column in the source database
The primary key data is changed in a database in a sync group, the changes do not get synchronized over to the rest of the databases in the sync group
When you filter out columns that are non-nullable and have no-default values on the schema to sync, clients that have filtered version will never be able to sync up their changes, and will always get sync failures
From the dropdown select the sync group member database that you want to provide the schema for the sync group. (Figure 2:1) If you have added or deleted databases to the sync group click Refresh to update the list in the dropdown. (Figure 2:2)
After the schema is imported check the checkbox in the Tables frame for each table you want to synchronize with this sync group. (Figure 2:3)
As you check a table in the Tables pane that table's columns are displayed in the Columns to sync pane. For each column you want to synchronize with this sync group check the Columns to sync checkbox. (Figure 2:4)
For each column/field you want to filter on:
Check the checkbox in the Filter column. (Figure 2:5)
Note: You can only filter on columns which have the following data types.
Find the name in the Field Name column of the Row Filtering section. (Figure 2:7)
From the dropdown select the relational operator you want to apply to this filter. (Figure 2:8)
Functionality
Type in the value you want to filter on. (Figure 2:9) As you apply filters the query string is shown below the filters. (Figure 2:11)
If you want to add another filter value select AND or OR from the dropdown. (Figure 2:10)
When all tables, columns and rows are properly configured click OK. (Figure 2:12)
Figure 2: Configure the dataset tables, columns and rows
Top
Feedback