Monday, October 27, 2008

Microsoft Sync Framework Advances

We need to look into this. This session was recorded.



Sync services is designed for rich clients.

It looks like it's microsofts answer to our c2s and s2c.





Mentioned one focus that Microsoft wants to solve for you is performance.

Can handle multiple end points such as relational db, file systems and more.

Vendors for different data stores will write their own sync providers.

Ms is setting up sync like ado.net.

We could write our own sync provider. Could we run it in silverlight?





Demo of how to write a sync app:





Sample application arch




When writing a provider that performs a standard set of operations/responsibilities.

V2 of the framework has a provider framework.





This framework should make it easy for us to create a provider against our store.

When creating a provider you can decide the basis over which you will sync ( number of changes, duration of time, size of log).

How a provider works:




What happens under the covers foe an update:




!!!
We have to look into this. The code review makes it looks like all you have to do is implement an interface for each datastore and all complications of sync are taken care of (even performance). Of course I doubt this is available for silverlight. I have a vague recollection of a roadmap for silverlight that had this in it just not sure where. I bet kevin knows or will reply with an answer.
!!!

Check out anchorage project and live mesh.





New features:




Filtering helps when users only want to sync some information. This is what we need.

Column filtering: used when you don't need all data for an object.

Sync framework can create chang units so you can divide your objects into smaller units.

Sync framework will take care of tracking of what has been sent to each client.

Went through how the sync framework handles several kinds of conflicts. Looks like they have wrapped up conflict detection and provided hooks for you to determine conflict resolution.













No comments: