Bidirectional Synchronization of SQL based Databases

Any of you aware of any projects or research papers on bidirectional synchronization of SQL based databases, that will do an intelligent sync. ?

To explain it: Consider the sqlite database in your browser that stores you browsing history. Now is there a way to store this sqlite database in a server and intelligently synchronize new/deleted history items (instead of the full file) from different clients parallely (say mobile, two PCs etc.)

I know of projects like Mozilla Weave which does this. But What I am interested in is not in finding a solution for the above history-sync problem, but a generic technology for synchronizing SQL accessible databases.

5 comments:

jkanti said...

Not really bidirectional , but you could lookup syncML (http://en.wikipedia.org/wiki/SyncML).

What is it that you want to achieve.

Nikanth Karthikesan said...

Do you mean a time-stamp for each operation + a policy based sync engine with conflict-resolution strategies?

Sankar said...

@jkanti I dont think that solves my needs but thanks for the link.

@nikanth Yes. that is the first idea that came to my mind. But I wish there is a better user-transparent way by the database engines.

Sankar said...

@nikanth: grr I meant opaque

Arvind said...

Usually, sync solutions are common from server - client for occasionally connected scenarios. We have a SQL Compact to SQL Server synchronization mechanism. I have also heard about sync between Sqlite and oracle/Sybase etc. Also check out sync fx - http://msdn.microsoft.com/en-us/sync/bb887608.aspx