设为首页 收藏本站
查看: 500|回复: 0

[经验分享] 一步步教你配置SQL SERVER合并复制(一)概念介绍

[复制链接]

尚未签到

发表于 2016-11-7 01:36:05 | 显示全部楼层 |阅读模式
  Rob Tiffany's 曾经在 MEDC 2007 Las Vegas 和 Tech Ed 2007 Orlando 演示了拥有800个订阅的4层合并复制架构。之后他开始编写一本叫《Windows Mobile Data Synchronization with SQL Server 2005 and SQL Server Compact 3.1》的书,将构建高性能、可伸缩性的合并复制架构的宝贵经验整理到书中,由于国内关于这方面的详细资料太少了,于是萌发将其翻译出来的念头。好了,闲话不多说了开始翻译:

前言:

设备中拥有一个数据库,服务器中拥有一个数据库,让设备中的数据能够跟服务器的数据同步已成为行业移动解决方案两个重要的因素。服务器的数据库存储着所有的数据,而它必须将 mobile中的应用程序所需要的数据推送到mobile中的数据库中去,同样地,mobile中修改的数据也需返回到服务器中去。微软的SQLSERVER提供了一种技术叫做合并复制,通过区域的网络,设备中已订阅的数据库将能通过复制的形式从服务器发布的数据库中下载数据,并能通过合并的方式将设备中对数据库的更新,修改,插入提交回服务器发布的数据库当中去.

这里,合并复制有个很好的功能就是,它只捕获修改设备中修改过的数据并将其更新到数据库当中去,并且它在协调多个设备发回来的数据有着很好的性能.

早在SQL SERVER CE1.0在2001年出来的时候,合并复制就成为一个很好的数据同步技术,并且它支持winodws mobile设备.随着互联网标准的公布,SQL SERVER 开发团队让移动设备的数据与服务器的数据同步不仅仅只能通过局域网,还可以通过无线网络,透过Http,wap等传输协议与服务器的数据进行同步.随着SQL Server CE支持合并复制,Windows Mobile 逐渐成为企业应用的一个平台,并且它支持Embedded Visual Basic,Embedded C++等开发工具和.NET Compact Framework框架,从2001到现在SQLSERVER也从2001升级至2005,马上2008又要出来了,SQL SERVER CE也从1.0升级至3.1版本,随着每一次的更新升级,数据同步技术变得更快,并且能更好地处理丢失的数据.现在,合并复制代表着一种最高级的技术,在这竞争日趋激烈的网络中,没有其他的数据同步解决方案能有像合并复制这样的深度和性能.
既然这样,那我们在使用SQL Server CE数据同步的时候有其他选择么?答案是肯定的.

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->(1)在.NET Compact Framework下,我们可以使用ADO.NET直接与SQL SERVER 进行连接,在局域网中,这或许是一种最佳的解决方案,但你能让你的移动设备时时刻刻都连接在局域网中吗?
  
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->(2)第二种方法是RDA,它像是合并复制的弟弟一样,它在SQL SERVER端几乎不用做任何配置,你只需写代码让它用pull方法从数据库中pull数据,然后用push方法将数据push回去,但是它不根据服务器端数据的变化,因此每次你都得将全部数据pull过来,全部数据push回去.
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->(3)第三种方法是使用webservice,你可以建立一个自定义的xml文件,将webservice中传输的数据序列化到DataSet当中,然后将DataSet的数据写入到XML文件当中去,这种解决方案能够解决前面两种只针对SQL SERVER数据库的,这种方法你还可以连接到其他类型的数据库比如Orcacle or DB2,不过你所要做的工作是编写数千行代码来实现这个,并且XML在处理大数据量时的效率并不尽如人意.
  

情景:

当你意识到合并复制在你的SQL SERVER 数据与SQL SERVER CE同步的重要性时,下面的这几个案例或许能够阐明这项技术能给你解决方案带来的价值.
(案例主要讲解windows mobile在各个领域的应用,以及合并复制在mobile的数据与服务器的数据同步时所起的作用,因为案例较多,由于时间的关系这边就不一一翻译了,个人认为这些案例对我们的用处不大)

了解这些概念:

· Publisher:在SQL SERVER中通过Replication发布的数据库
· Article:Replication发布的数据表或子集
· Publication:Article的集合
· Distributor:指的是包含通过Replication发布的数据库的服务器.
· Subsciber:指的是运行在windows mobile上的接受订阅数据库并将结果改变提交给publisher的数据库
· Subscription:指的是从Subscriber从服务器请求需要复制的数据,这些复制的结果包括表及其集合将被下载并在SQL Mobile中创建,你可以获取这些表的主键,关联,以及数据。第一次从Distributor下载的数据称为快照,只需很少的内存消耗就可以下载大量的数据到Windows Mobile模拟器上。
· IIS:SQL MOBILE SERVER Agent,一个ISAPI、SQL Mobile Replication Provider以及SQL SERVER Reconciler集合在一起就是人们众所周知的SQL MOBILE SERVER TOOLS,它集合在IIS上在设备和SQL SERVER提供一个Internet/Intranet通道.在下面的这张图中,你就会发现Publisher,Distributor,IIS 和Subscriber是怎样很好地结合在一起。你可能也注意到了下面的体系架构中有几个代理的任务很繁重,这个架构或许跟你以前所见过的有所不同。
DSC0000.jpg
上图是单个设备请求时服务器所发生的一系列请求,而下图将是本篇所要重点讲述的如何取搭建企业应用的合并复制的四层架构。
DSC0001.jpg

译者注:图图很不错哦,认真看肯定会有收获的)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-296547-1-1.html 上篇帖子: Sql Server每日一练-在select语句中使用top的一些小技巧 下篇帖子: 使用Lumigent Log Explorer对SQL Server的事务日志进行分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表