全面理解微软同步框架(Microsoft Sync Framework)

日期: 2015-09-14 作者:Robert Sheldon翻译:冯昀晖 来源:TechTarget中国 英文

微软同步框架(Microsoft Sync Framework)是一个综合平台,可以同步跨应用、服务和设备的异构数据。该框架提供了对SQL Server技术的内置支持,包括内部部署的SQL Server、Azure SQL数据库和Azure虚拟机(VM)中的SQL Server。该框架还支持非常广泛的数据源,并可以扩展到专用解决方案中。 有了微软同步框架平台,企业可以构建多样化生态系统,支持协作,并有助于离线操作的同步,还可以实现在本地和远程服务之间的同步。

该平台提供一组强大的API,可以对其内置同步和变化跟踪技术进行补充,这就可以支持多样化的协议、拓扑结构和不同数据源类型。 微软同步框架(M……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

微软同步框架(Microsoft Sync Framework)是一个综合平台,可以同步跨应用、服务和设备的异构数据。该框架提供了对SQL Server技术的内置支持,包括内部部署的SQL Server、Azure SQL数据库和Azure虚拟机(VM)中的SQL Server。该框架还支持非常广泛的数据源,并可以扩展到专用解决方案中。

有了微软同步框架平台,企业可以构建多样化生态系统,支持协作,并有助于离线操作的同步,还可以实现在本地和远程服务之间的同步。该平台提供一组强大的API,可以对其内置同步和变化跟踪技术进行补充,这就可以支持多样化的协议、拓扑结构和不同数据源类型。

微软同步框架(Microsoft Sync Framework)概览

开发人员们可以使用该同步框架构建丰富多样的应用程序,利用SQL Server和其它技术随时随地提供给用户需要的数据类型。该框架设计支持偶尔连接应用(OCA),支持跨不同终端或者分布式终端漫游和共享数据。

使用同步框架,我们可以使用现有架构和协议创建集成同步平台,此平台与传输方式无关,适用于多重网络拓扑结构。该框架支持异构数据库连接,支持不同传输方式和服务之间的连接,比如WCF(Windows Communication Foundation)。

该同步框架的核心是同步运行时,它提供了所有数据类型和协议的同步支持。该框架还可以创建和使用支持FeedSync的种子同步。FeedSync是一种多主同步算法,用于对RSS和Atom种子格式数据集扩展同步。

微软同步框架有一个重要组件叫做“参与者”,它表示了可用于同步定位的数据源位置。它可以是笔记本、小USB盘或者互联网服务。“完整参与者”可以运行可执行程序和存储数据,比如智能电话或者个人计算机上的应用。“部分参与者”可以存储数据,但是不能运行可执行程序,支持诸如小USB盘或者SD卡的操作。

“简单参与者”可以提供数据,但是不能存储或者运行可执行程序。简单参与者提供Web服务或者RSS种子这样的数据。例如,eBay和亚马逊可以看做是简单参与者。

该同步框架支持以上三种参与类型,它提供可扩展提供器模型来把数据源集成到该平台。有了提供器,任何数据源都可以参与到同步过程中来。该同步框架包含有大量内置提供器,支持常见各类数据源,包括SQL Server,不过开发人员也可以创建自己的定制提供器。

数据源本身可以是任何关系数据库,或者是磁盘上的文件,也可以是应用自定义的数据存储形式。该同步框架支持丰富的元数据模型,可以维护支持协作和离线操作必要的信息,不管其数据类型和网络拓扑如何。

SQL Server与同步框架(Sync Framework)

在当今这个移动设备发展导致移动应用需求强烈的时代,数据访问的灵活性和效率要求比以往更强烈了。用户的旧有模型对中央数据库直接连接并且持续连接访问的模式不在能满足多种设备移动性要求的解决方案。基于这个原因考虑,许多组织都在转向OCA模型,以期满足其数据需求。OCA支持用户必要时在本地存储和访问数据。本地数据会周期性同步到中央数据库。

使用OCA模型,用户不再需要维护持续网络连接才能执行操作。他们可以随时在自己的设备上访问到数据,缓解了中央服务器的处理负载。这种模型还被扩展到远程工作组,可以分别维护自己的数据存储,然后定期同步到主数据中心。

微软同步框架可以支持各种OCA拓扑,包括客户端-服务器(C/S)模型、客户端-客户端模型(C/C)以及两者的混合模型。在CS模型中,所有终端都从中央服务器进行同步;在CC模型中,所有的客户端之间互相同步,无需经过中心服务器。利用这些拓扑方案(包括混合方案),该同步框架可以利用其同步功能方便地实现离线操作和协作。

该同步框架包括有API和提供器,这都是构建OCA、与ADO.NET数据库操作,所必须的部件,这也使得在那些数据库和其它同步框架数据源(包括文件系统、web服务和定制数据存储)之间实现同步成为可能。同步框架提供器可以利用变化捕获技术实现对变更的监视,不需要数据库触发器,也不需要调整数据表结构。该框架还包含有监测和解决冲突的功能,可以设置只上传、只下载或者表对表操作等同步模式。

近观SQL Server同步

该同步框架为SQL Server 2005 SP2以及后续版本和SQL Server Compact 3.5 SP2及后续版本提供内置支持,不管是本地部署还是使用Azure虚拟机都支持。该同步框架还可以用于连接Azure SQL数据库。

为方便同步流程,该同步框架带有协作器可以帮助判断应用变更的顺序和方向。此外,协作器还维护关于同步操作状态和成功情况会话级别的信息。

该框架还使用提供器来与每个参与的数据库进行通信。提供器把数据库实现细节与同步框架组件的其它部分实现了分离,进而提供一个统一方法来访问数据,不管是什么数据源类型。

该同步框架包括有五个数据库提供器。其中有三个主提供器支持CS模式和混合拓扑结构下的离线操作和协作场景。开发者们可以以不同的方式使用提供器,并与其它提供器类型同步。这三个主要的数据库提供器每个都具体到一种产品类型,分别是:SQL Server数据库,SQL Server compact数据库和其它关系型数据库系统。

另外两个提供器只支持离线操作,而且已经被前三个提供器所替代。该同步框架保留它们只是为了支持以前遗留应用。

微软同步框架及其对SQL Server数据库和其它数据源的支持,经证实对于组织实现OCA应用非常有用。开发者们可以使用SQL Server后端创建强大的解决方案,支持各种设备的数据需求。在许多情况下,开箱即用的提供器可以满足开发的需求,但是如果特殊有不够用的地方,框架也支持我们自定义提供器。组织可以形成支持协作和跨服务、设备和应用离线访问的同步解决方案。

相关推荐