Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Synchronizing Data: Inside the Microsoft Sync Framework

Download

Right click “Save as…”

  • High Quality WMV (PC)
  • MP3 (Audio only)
  • MP4 (iPhone, Android)
  • Mid Quality WMV (Lo-band, Mobile)
  • WMV (WMV Video)

The Microsoft Sync Framework is a comprehensive synchronization platform that enables collaboration and offline scenarios for applications, services and devices. It supports any kind of data type and any kind of data store. The framework was designed to be transfer protocol independent and to allow the developers to map any kind of network topology.

Here, Software Developers Aaron Greene, Andrei Maksimenka and Niner intern Christian "LittleGuru" Liensberger sit down with me to dig into the details of the Sync Framework and explore the complexities of sync, generally. As usual, the conversation winds down many roads and it's a great discussion (yes, it's a tad long, but find some time. It's worth it...). It's always a pleasure to chat with the folks who write the platforms and frameworks we depend on to get our algorithms written in efficient ways. The Sync Framework enables several interesting scenarios, most of which have yet to be thought up.Thanks guys! 

Oh, and by the way, I hear that LittleGuru is doing a smashingly great job in his role as a PM for the Sync Framework team. Right on, LittleGuru! Go Niners! Smiley

 

Check out the Microsoft Sync Framework team blog. The team is very much engaged with developers who use our framework and monitor the forums very closely. Aaron and Andrei spend a good deal of time on the forums, just as many devs do in support of their products around the company.

Tags:

Follow the Discussion

  • PerfectPhasePerfectPhase "This is not war, this is pest control!" - Dalek to Cyberman

    If I have two systems that need to sync data and have an intermittent link and I use this framework, can the system exchange data in real time when connected, or would they have to poll? 
  • The Sync Framework is data and protocol agnostic, therefore it's up to your implementation when to start a sync session. For example, your sync application can be written in such a way that once a connection between endpoints is detected, you can start sync session right away. From the Sync Framework's perspective, both providers are running in the same process on the same machine. A provider can be written to support remote processing over arbitrary protocol and transport. You can find Sync Framework samples at http://code.msdn.microsoft.com/sync. All information about Sync FX is available at http://msdn.microsoft.com/sync.

  • William Staceystaceyw Before C# there was darkness...
    Thanks guys.

    1) Have never got a good answer why Mesh does not use Sync Framework as its api, instead of developing another one?

    2) Does SyncFx have ability to talk across NATs like Mesh does?  How does name rez work to devices over the net and connecting to them?  Is there a MS rendezvous point or something?  tia
  • Allan LindqvistaL_ Kinect ftw
    cool Smiley i'll be checking this out

    the blog link doesnt seem to work btw :/
  • nice, that pseudo-sequence diagram rocked

    way to go for asking about their background (where/when they started in what team etc.), we should do this in all videos Tongue Out nice video

    Sync Framework Blog
  • ivan_ivan_ g

    Very interesting post and nice discussion.
     
    I would also like to see where MS is going with all their Sync technologies, is there going to be some unified platform eventually?

    You could use SQL Server Merge replication for most of the scenarious, it is very flexible and out of the box, it works with mobile devices  Compact Edition and Express versions of SQL Server.  Deploying stored procedures and making changes is easy and fast, just put it on a publisher and all clients get it, depending on the rules. When disconnected it works locally, when connected, SQL server automatically detects connection and starts synchronizing and it takes little effort to configure and no need to learn new API, which could change several months from now.

    And there is Live Mesh for other things (like files), and I think Live Mesh team promised to open their APIs as well.

    The good thing about Sync Services is that you don't need SQL Server license for Database Publisher and you don't need to replicate to the cloud.

    Could you please point any other benefits, advantages, or disadvantages?

    Thanks!

  • Hi  staceyw,

    1) Mesh has a slightly different requirements and therefore they use FeedSync as the default data and synchronization metadata representation format. The primary reason I believe was that Mesh wanted to use open and Web specific RSS/Atom-based format. That's what FeedSync is perfect for. This aligns well with the Sync FX which abstracts itself away from the protocol and data format business. For example, Sync FX supports interop with FeedSync (i.e. you can consume or produce a FeedSync RSS/Atom feed) and transforms Sync FX's sync metadata such as knowledge to/from FeedSync sync metadata.

    2) Sync FX is not any transport specific, therefore if sync providers choose to use NAT-friendly transport then yes.

    HTH
  • Hi ivan_,

    Some existing MS sync technologies such as Mesh (FeedSync) and Sync FX are compatible on sync metadata level, therefore one can think of them as different ways to achieve the same goal. FeedSync is all about open Web standards such as RSS/Atom and Sync FX is a generic framework for building arbitrary sync solutions. I can't comment on SQL Server Merge replication now.

    For overview of benefits please refer to http://msdn.microsoft.com/en-us/sync/default.aspx, particularly http://msdn.microsoft.com/en-us/sync/bb887625.aspx.

    HTH
  • ivan_ivan_ g
    Oh, I see, thanks for the explanation!
  • Hi

    I need help with doing something like this... I have an application that runs on a WinCE device and which needs to sync files with a server that is running on a Windows OS. I have seen the applications that sync files on desktops running the Sync framework. My question is this...Is there a port of the File synchronization provider for WinCE that can be used via Compact Framework applications? If there isn't one then are there any other ways to achieve this?

    Thanks
    Durgesh.
  • ytxxydotcomytxxydotcom

    Stop hack the program!!!

  • 网站优化软件�网站优化软件

    Stop hack the program!!!

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.