DCSIMG
Getting Started with Microsoft Sync Framework - Gil Fink's Blog

Gil Fink's Blog

Fink about IT

News

Microsoft MVP

My Facebook Profile My Twitter Profile My Linkedin Profile

Locations of visitors to this page

Creative Commons License

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.
© Copyright 2013 Gil Fink

Hebrew Articles

Index Pages

My OSS Projects

English Articles

Getting Started with Microsoft Sync Framework

Getting Started with Microsoft Sync Framework

The post will introduce the Introduction to Microsoft Sync Framework
Microsoft Sync Framework which,
in my opinion, is going to be
one of the must know technologies
of the near future.

What is Microsoft Sync Framework?

Microsoft Sync Framework is a synchronization
platform that enables collaboration and offline
access across multiple data stores. The framework
enables taking data offline by working against a
cached set of data. Then we can submit the
changes to a global database in a batch by using
the framework features, technologies and tools.
The Sync Framework helps to build a sync ecosystems that will be able to
integrate any application (web, win, mobile and etc) with any data from
any store using any protocol over any network by using
custom synchronization providers.

A Little About Microsoft Sync Framework Components

The Sync Framework was designed as a componentized and layered architecture
to allow us to use only what we need to enable sync scenarios. The framework is
divided into the following three main components:

  • Core Sync Runtime. The runtime that include all the algorithms and
    components which we can use in order to sync our application.
  • Sync Provider Framework. The providers are software components that
    represents a particular repository of information to be synchronized
    (replica). We can write our own custom providers or use the providers that
    were shipped in the framework.
  • Domain-specific components. An infrastructure to enable rapid development
    when using specific stores and protocols like SQL Server or NTFS for example.

How Does it Work in a Nutshell

The next image which is taken from PDC lecture – 
TL30: Microsoft Sync Framework: Advances in v2 shows the main issues of how
Microsoft Sync Framework works:
How Synchronization Happens?

What you can see is the sync flow. The sync providers sits on top of the
data store and represent the repository. They are used to enumerate the items
in a data store and to maintain synchronization metadata and the state of the data
store. When a synchronization is needed a synchronization session is constructed
and with it a sync orchestrator. The sync orchestrator will manage the
synchronization from the source data store to the destination data store.
The destination provider will send its knowledge set to the source provider.
The source provider will compare that knowledge with its change set and will
send the changes to the destination. The destination provider will make sure that
the changes are not conflicting its storage and then will merge them and update its
knowledge.

Built in Sync Services

The following sync services are currently available to use in the Sync Framework v1:

  • Sync Services for ADO.NET.
    A synchronization provider for synchronizing across databases using ADO.NET.
  • Sync Services for File Systems.
    A synchronization provider for synchronizing two file system locations.
  • Sync Services for FeedSync.
    A synchronization provider for synchronizing replicas by creating a FeedSync,
    either in RSS or ATOM, which can then be subscribed and used by whoever need
    them.

Resources

The following resources will help you to start with the Sync Framework:

Summary

Lets sum up, in the post I introduced the Microsoft Sync Framework.
The Sync Framework is a rich synchronization platform which will be a very
useful tool for developers in the near future. I urge you to learn it today
and not to be left behind. In the future I’ll write more in the subject of
Microsoft Sync Framework.

DotNetKicks Image

Comments

DotNetKicks.com said:

You've been kicked (a good thing) - Trackback from DotNetKicks.com

# January 10, 2009 11:57 AM

Gil Fink on .Net said:

My Current Learning List of Technologies In the last few days I have started to learn few old/new technologies

# January 11, 2009 4:07 PM

Jorge Serrano - MVP Visual Developer - Visual Basic said:

El último evento del año de MADNUG tiene un sabor especial... el que deja la sincronización

# December 17, 2009 1:20 AM

El blog de Jorge said:

El último evento del año de MADNUG tiene un sabor especial... el que deja la sincronización

# December 17, 2009 11:57 AM