View
222
Download
0
Category
Tags:
Preview:
Citation preview
Microsoft Sync Framework Advances
Rahul GangwarPartner Technical Consultant| Microsofthttp://blogs.msdn.com/rahul/ | rahul.gangwar@microsoft.com
Agenda
Introduction to Sync FrameworkNew features in Sync Framework 2.0Sync Services for ADO.NETDemo of Sync Services on Windows Mobile client
All stores are differentSome are very capable, most are not
Conflicts are difficult to detectAnd even harder to manage afterwards
Misidentification of conflicts bad experienceDuplicates, over-prompting, data loss
Inefficient change enumeration makes sync too expensive
Sync loops are a fact of lifeFew people set out to get into one, many end up in one
80% solution much simpler than 100%Corner cases are everywhere!
Why use a Framework?Sync is hard
Home PC
SmartPhone
Server
Settings
Files
Settings
Files
We strike for the balance of power and flexibility
Powerful: solve hard sync problemsConflict detection and resolutionUnreliable networks, i.e. interruptions/partial syncsLoops, metadata loss, etcEasy-to-use and performant
FlexibleArbitrary storesArbitrary protocolsArbitrary data typesArbitrary topologies
Why Microsoft Sync Framework?Solving hard problems exactly once
Using Microsoft Sync FrameworkHow synchronization happens
Sync Provider
Sync Application
Sync Provider
Sync Orchestrator
DataStore
Data Store
changes
changes changes
changes
Writing a Sync Application
SyncOrchestrator orch = new SyncOrchestrator();
orch.LocalProvider = new FileSyncProvider(guid1, “c:\\temp\\
myfolder”);
orch.RemoteProvider =
new LiveMeshProvider(guid2,
new NetworkCreditial(username, password),
“MyMeshFolder”);
orch.Synchronize();
Not too hard!
Change Unit Filtering
NameemailPhone
Address
Photograph
Contact on Notebook
NameemailPhone
Contact on Small Device
Provider Negotiated Filters
File System
Interested Party
*.txt
*.jpg
*.wmv
*.txtProvider
Provider
Orchestrator
filter filter
Makes it easy for you to sync participating endpoints
Makes it easy for your endpoint to participate
Comes with built-in endpoints:V1: File System, Relational DatabasesV2: SQL Data Services, Live Mesh, ADO.NET Data Services and more
Provides integrated tools and user experiencesSync Services for ADO.NETSyncToy Project Codename “Anchorage”
What does Microsoft Sync Framework do? Live
MeshSmugMu
gSync
StoreSyncable
Synching ADO.NET Data ServiceOR “Taking ADO.NET Data Service offline”
ADO.NET Data Service exposes data source over cloud.Sync Framework brings offline capability to data source.Combining these two will expose data source over cloud with offline capability.
Astoria
ClientSync
Framework
Sync Services for ADO.NET
Application SQL ServerFetch
Update
Local Storage Fetc
h
Synchronize
Sync Services for ADO.NET
Using “n” tier ArchitectureSynchronization done via web services
DEMO
Sync Framework v2 is the easiest and most efficient way to synchronize your data with
Live Mesh, File systems, Databases, ADO.NET Data Services, SQL Data Services, and more.
Summary
Resources
Sync Developer Centerhttp://msdn.microsoft.com/sync
SDK (including documentation)WhitepapersSamples (including several end-to-end)
Sync Bloghttp://blogs.msdn.com/sync
AnnouncementsTips and Tricks
SQL Labswww.sqlserviceslabs.com
Cutting edge prototypes and pre-release functionality
Feedback / QnA
Your Feedback is Important!Please take a few moments to fill out our
online feedback form.
Use the Question Manager on LiveMeeting to ask your questions now!
Contact
Blog Addresshttp://blogs.msdn.com/rahul/
Email Addressrahul.gangwar@microsoft.com
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Recommended