Transcript
Page 1: IntroducingMicrosoft SyncFramework

IntroducingMicrosoft

SyncFramework

Alexander KovalSoftware Architect,

MCPD

Page 2: IntroducingMicrosoft SyncFramework

Agenda

1. What is MS Sync?2. Sync Participant Types3. MS Sync Architecture4. Sync Providers5. Demo6. Conflict Resolution7. Demo8. What next?9. Q & A

Page 3: IntroducingMicrosoft SyncFramework

What is MS Sync?

1. Synchronization platform

2. Cross protocol

3. Cross data store• DB• File systems• Data feeds

Page 4: IntroducingMicrosoft SyncFramework

Participant Types

1. Full Participants2. Partial Participants3. Simple Participants

Page 5: IntroducingMicrosoft SyncFramework

Architecture

Sync Application

Sync Orchestrator

Source Provider

Destination Provider

DB DB

Metadata

Metadata

Page 6: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platformData Providers

• Standard Providers– DB Synchronization Providers– File Synchronization Providers– Web Feed Synchronization Providers

• Custom Providers

Page 7: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platformSyncOrchestrator

Sample code for using SyncOrchestrator:

Page 8: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platform

DEMO 1(Synchronizing Files to Azure Blobs)

Page 9: IntroducingMicrosoft SyncFramework

Metadata

Allows to track State and Change

• Versions – Creation, Update

• Each Version – Tick Count, Replica ID

• Knowledge– Enumerates changes, Detects conflicts

• Tombstones

Page 10: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platformSynchronization Algorithm

1. Session gets destination Replica2. Session sends destination Replica to Source Provider3. Source provider determines Change Set4. Source provider sends Change Set to Session5. Session applies Change Set to Destination

Session

Source

Provider

Destination

Provider

Page 11: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platformConflict Resolution

• Enum ConflictResolutionPolicy{ ApplicationDefined | DestinationWins | SourceWins }

• Register EventHandler

Page 12: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platform

DEMO 2(Synchronization via Custom Data Provider)

Page 13: IntroducingMicrosoft SyncFramework

cloud

p

latf

orm

introductionwindows azure platformWhat next?

• Tools built on MS Sync Framework– Microsoft ActiveSync– SQL Azure Data Sync– “Denali” project

Page 14: IntroducingMicrosoft SyncFramework

Summary

1. Introduced MS Sync Framework

2. Reviewed the usage of MS Sync

3. Reviewed Sync Components4. Conflict Resolution5. Tools built on MS Sync

Framework

Page 15: IntroducingMicrosoft SyncFramework

Storage in Windows Azure Platform

Q & A

Page 16: IntroducingMicrosoft SyncFramework

Resources

• Getting startedhttp://msdn.microsoft.com/ru-ru/library/bb902854.aspx

• MS Sync Framework 2.0 Redistributable Package http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=18241

• Code Gallery http://code.msdn.microsoft.com/site/search?f%5B0%5D.Type=SearchText&f%5B0%5D.Value=Microsoft%20Sync%20Framework&f%5B1%5D.Type=Affiliation&f%5B1%5D.Value=Official&f%5B1%5D.Text=Microsoft

• Excellent Intro http://msdn.microsoft.com/en-us/sync/bb821992

• MS Sync with SQL Azurehttp://www.microsoft.com/windowsazure/features/database/#data-sync

• Blog of Liam Cavanaghhttp://blogs.msdn.com/b/sync/archive/2010/06/07/introducing-data-sync-service-for-sql-azure.aspx

Email: [email protected]: http://www.codemastersintl.com/Blogs/Alexander-Koval


Top Related