程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 一步步教你配置SQL SERVER合並復制(一)概念介紹

一步步教你配置SQL SERVER合並復制(一)概念介紹

編輯:關於SqlServer

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數據同步的時候有其他選擇麼?答案是肯定的.

(1)在.NET Compact Framework下,我們可以使用ADO.NET直接與SQL SERVER 進行連接,在局域網中,這或許是一種最佳的解決方案,但你能讓你的移動設備時時刻刻都連接在局域網中嗎?

(2)第二種方法是RDA,它像是合並復制的弟弟一樣,它在SQL SERVER端幾乎不用做任何配置,你只需寫代碼讓它用pull方法從數據庫中pull數據,然後用push方法將數據push回去,但是它不根據服務器端數據的變化,因此每次你都得將全部數據pull過來,全部數據push回去.

(3)第三種方法是使用webservice,你可以建立一個自定義的xml文件,將webservice中傳輸的數據序列化到DataSet當中,然後將DataSet的數據寫入到XML文件當中去,這種解決方案能夠解決前面兩種只針對SQL SERVER數據庫的,這種方法你還可以連接到其他類型的數據庫比如Orcacle or DB2,不過你所要做的工作是編寫數千行代碼來實現這個,並且XML在處理大數據量時的效率並不盡如人意.

情景:

當你意識到合並復制在你的SQL SERVER 數據與SQL SERVER CE同步的重要性時,下面的這幾個案例或許能夠闡明這項技術能給你解決方案帶來的價值.

(案例主要講解windows mobile在各個領域的應用,以及合並復制在mobile的數據與服務器的數據同步時所起的作用,因為案例較多,由於時間的關系這邊就不一一翻譯了,個人認為這些案例對我們的用處不大)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved