views:

155

answers:

1

i have a windows application made in VB.NET which maintains a database, and i have similar application running across many disconnected machines, all of them have similar databases. Now we have a requirement that all the data from these machines must be uploaded on a central database server MSSQL on a daily basis, we can have an internet connection on each machine for them to upload the data but i wanted to know if any framework exists which can assist in the synchronization of the local data with the online data? i saw Microsoft's Sync Framework so i have the following questions.

  • Is that the only option avaialble
  • How windows applications used to synchronize data before SQL Server 2008
  • Is there any option for SQL Server 2005.
A: 

There are basically 2 choices:

  1. As you said, Sync Framework
  2. Merge Replication

They all work pretty much on SQL2000, 2005 and 2008, as well as Compact edition.

I have not used the new released (2.0) of the Sync Framework, but I believe they have made a few improvements to make it easier to set up. Else, it works quite well, with a few little issues (perhaps only on the CE side for me).

My experience with merge replication has proved to be quite troublesome, and it is difficult to set up, but from a performance (including memory consumption) point of view looks much better. If you have a capable SQL person around, I would attempt this first.

Both these solutions will do incremental synchronization so the overhead is not so much.

leppie