欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于服務(wù)器的數(shù)據(jù)更新方法和服務(wù)器的制作方法

文檔序號(hào):7864095閱讀:272來源:國知局
專利名稱:基于服務(wù)器的數(shù)據(jù)更新方法和服務(wù)器的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于通信領(lǐng)域,具體涉及數(shù)字信息的傳輸,特別是一種基于服務(wù)器的數(shù)據(jù)更新方法和服務(wù)器。
背景技術(shù)
在網(wǎng)絡(luò)通信系統(tǒng)實(shí)現(xiàn)的計(jì)算架構(gòu)中,經(jīng)常需要在不同的計(jì)算實(shí)體之間傳送并在各個(gè)計(jì)算實(shí)體中存儲(chǔ)不同版本的數(shù)據(jù)。例如,當(dāng)用戶對(duì)其個(gè)人電腦(PC)的瀏覽器的收藏夾進(jìn)行改變時(shí),每進(jìn)行一次改變就會(huì)產(chǎn)生不同版本的收藏夾。在需要通過服務(wù)器與客戶端進(jìn)行同步的新興計(jì)算應(yīng)用領(lǐng)域,通常要求在客戶端和服務(wù)器之間進(jìn)行數(shù)據(jù)的傳送,并在各計(jì)算實(shí)體中存儲(chǔ)和實(shí)時(shí)更新數(shù)據(jù),比如所述收藏夾的信息。下面示例性地說明在現(xiàn)有技術(shù)中存在的幾種同步和更新數(shù)據(jù)的場(chǎng)景。
圖1是現(xiàn)有技術(shù)中在多個(gè)客戶端之間同步數(shù)據(jù)的場(chǎng)景示意圖。該場(chǎng)景為同一用戶可以登錄不同的客戶端(例如手機(jī)和PC),為了進(jìn)行數(shù)據(jù)分享與同步,各客戶端均與一服務(wù)器相連。當(dāng)用戶在登錄其中一個(gè)客戶端(例如PC)時(shí)更改了某一數(shù)據(jù),例如收藏夾,則在該客戶端上就會(huì)存儲(chǔ)一個(gè)更新版本的收藏夾。為了該用戶能夠在下次登錄另一客戶端時(shí)使用該更新過的收藏夾,該客戶端先將該更新的收藏夾傳送到服務(wù)器,并且,當(dāng)該用戶登錄另一客戶端時(shí),該服務(wù)器就將該更新的收藏夾傳送給該用戶當(dāng)前登錄的另一客戶端(例如手機(jī))。在該場(chǎng)景中,即使一個(gè)客戶端的數(shù)據(jù)發(fā)生微小變化,也需要將整個(gè)更新后的數(shù)據(jù)(或全量的更新后的數(shù)據(jù))在客戶端和服務(wù)器之間進(jìn)行傳送。這對(duì)于需要頻繁更新的數(shù)據(jù)或數(shù)據(jù)量巨大的數(shù)據(jù),無疑會(huì)極大的占用網(wǎng)絡(luò)帶寬,耗費(fèi)大量資源。
圖2是現(xiàn)有技術(shù)中在主從服務(wù)器之間同步數(shù)據(jù)的場(chǎng)景示意圖。該場(chǎng)景為,數(shù)據(jù)共享網(wǎng)絡(luò)中包括主服務(wù)器和從服務(wù)器,當(dāng)主服務(wù)器中的一個(gè)數(shù)據(jù)發(fā)生了變化時(shí),該主服務(wù)器需要將整個(gè)更新后的數(shù)據(jù)傳送給從服務(wù)器。該數(shù)據(jù)例如是一個(gè)文件,或者是文件中的部分?jǐn)?shù)據(jù)。同樣,該場(chǎng)景中也不區(qū)分?jǐn)?shù)據(jù)更新量的大小,而是直接將整個(gè)更新后的數(shù)據(jù)在主、從服務(wù)器之間進(jìn)行傳送。
由此可見,現(xiàn)有技術(shù)中極需一種更加資源集約化的數(shù)據(jù)更新方法,以降低數(shù)據(jù)更新帶來的帶寬占用和資源消耗。發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的基于服務(wù)器的數(shù)據(jù)更新方法和服務(wù)器。
依據(jù)本發(fā)明的一個(gè)方面,提供了一種基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器能夠與若干數(shù)據(jù)處理裝置進(jìn)行數(shù)據(jù)交換,該方法包括如下步驟所述服務(wù)器從一個(gè)數(shù)據(jù)處理裝置接收數(shù)據(jù),并將該數(shù)據(jù)保存在該服務(wù)器中,該數(shù)據(jù)包括增量數(shù)據(jù),所述增量數(shù)據(jù)是指該數(shù)據(jù)處理裝置中更新后的數(shù)據(jù)相對(duì)于更新前數(shù)據(jù)的變化的數(shù)據(jù);所述服務(wù)器將其保存的數(shù)據(jù)的至少一部分發(fā)送到另一個(gè)數(shù)據(jù)處理裝置,該另一個(gè)數(shù)據(jù)處理裝置根據(jù)其待更新的數(shù)據(jù)和接收到的數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。
依據(jù)本發(fā)明的另一方面,提供了一種服務(wù)器,用于提供數(shù)據(jù)更新服務(wù),所述服務(wù)器能夠與若干數(shù)據(jù)處理裝置進(jìn)行數(shù)據(jù)交換,該服務(wù)器包括通信模塊,用于從一個(gè)數(shù)據(jù)處理裝置接收數(shù)據(jù),所述數(shù)據(jù)包括增量數(shù)據(jù),所述增量數(shù)據(jù)是指更新后的數(shù)據(jù)相對(duì)于更新前的數(shù)據(jù)的變化的數(shù)據(jù);數(shù)據(jù)存儲(chǔ)模塊,用于保存從所述數(shù)據(jù)處理裝置接收的數(shù)據(jù)。
可選地,所述通信模塊還用于,將該服務(wù)器中保存的數(shù)據(jù)的至少一部分發(fā)送到另一數(shù)據(jù)處理裝置,以便該另一數(shù)據(jù)處理裝置根據(jù)接收到的數(shù)據(jù)和待更新的數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。
可選地,所述服務(wù)器還包括一個(gè)閾值控制模塊,其用于設(shè)定第一閾值,并且根據(jù)該第一閾值,控制通信模塊向一個(gè)數(shù)據(jù)處理裝置發(fā)出指令,要求該數(shù)據(jù)處理裝置上傳全量的更新后的數(shù)據(jù),所述數(shù)據(jù)處理裝置是指向該服務(wù)器發(fā)送最新版本數(shù)據(jù)的數(shù)據(jù)處理裝置。
可選地,所述閾值控制模塊還用于設(shè)定第二閾值,并且根據(jù)該第二閾值,控制所述數(shù)據(jù)存儲(chǔ)模塊刪除較早版本的數(shù)據(jù),使所存儲(chǔ)的數(shù)據(jù)版本不多于第二閾值。
可選地,所述服務(wù)器還包括選擇模塊,用于選擇通信模塊向所述另一數(shù)據(jù)處理裝置發(fā)送的數(shù)據(jù)
根據(jù)本發(fā)明的數(shù)據(jù)更新方法和服務(wù)器基于增量數(shù)據(jù), 由于增量數(shù)據(jù)的數(shù)據(jù)量小于全量的更新后的數(shù)據(jù),因此能夠大大減小數(shù)據(jù)更新時(shí)所占用的網(wǎng)絡(luò)帶寬、提高更新的速度、 效率和實(shí)時(shí)性。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。


通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中
圖1是現(xiàn)有技術(shù)中在多個(gè)客戶端之間同步數(shù)據(jù)的場(chǎng)景示意圖2是現(xiàn)有技術(shù)中在主、從服務(wù)器之間同步數(shù)據(jù)的場(chǎng)景示意圖3是本發(fā)明的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的基本步驟流程圖4是本發(fā)明的第一實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的場(chǎng)景示意圖5是本發(fā)明的第一實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的流程圖6是本發(fā)明的第一實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新系統(tǒng)的架構(gòu)示意圖7是本發(fā)明的第二實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的流程圖8是本發(fā)明的第二實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新系統(tǒng)的架構(gòu)示意圖。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
本發(fā)明提出一種新的數(shù)據(jù)更新方法和相應(yīng)的裝置,本發(fā)明的方法和裝置適合應(yīng)用于任何具有數(shù)據(jù)處理能力的數(shù)據(jù)處理設(shè)備,包括固定或移動(dòng)的數(shù)據(jù)處理設(shè)備,例如個(gè)人電腦(PC)、服務(wù)器、掌上電腦、智能手機(jī)等。
假定一個(gè)數(shù)據(jù)處理設(shè)備中存儲(chǔ)有一數(shù)據(jù)文件,該數(shù)據(jù)文件可能不斷地需要更新, 以下簡(jiǎn)稱數(shù)據(jù)。為了避免在數(shù)據(jù)更新時(shí)傳送用于替代更新前的數(shù)據(jù)的整個(gè)更新后的數(shù)據(jù), 本發(fā)明中提出“增量數(shù)據(jù)”的概念。
在說明“增量數(shù)據(jù)”之前,我們首先定義本發(fā)明中的“全量數(shù)據(jù)”的概念。我們將全量數(shù)據(jù)定義為不依賴待更新的數(shù)據(jù)就能對(duì)該待更新的數(shù)據(jù)進(jìn)行更新的數(shù)據(jù)。也就是說, 只要將全量數(shù)據(jù)傳到數(shù)據(jù)處理設(shè)備中,并將它取代待更新的數(shù)據(jù),就完成了數(shù)據(jù)的更新,而不需要進(jìn)行任何其他的操作??梢?,現(xiàn)有技術(shù)的數(shù)據(jù)更新方法其實(shí)就是直接使用全量的更新后的數(shù)據(jù)取代待更新的數(shù)據(jù)得到全量的經(jīng)更新的數(shù)據(jù)的方法。例如,待更新的數(shù)據(jù)為一個(gè)收藏夾,該收藏夾包括多個(gè)收藏項(xiàng)目,那么,一個(gè)全量的更新后的數(shù)據(jù)就是一個(gè)不同于原收藏夾的新收藏夾。該新收藏夾可以包含原始收藏夾中的一些項(xiàng)目,也可以完全不包含原始收藏夾中的項(xiàng)目,只要將該新的收藏夾取代原始的收藏夾,就完成了數(shù)據(jù)更新。使用全量的更新后的數(shù)據(jù)來進(jìn)行數(shù)據(jù)更新的好處是不需要考慮原始數(shù)據(jù)的數(shù)據(jù)內(nèi)容是什么,也無論其是什么類型的數(shù)據(jù),都能直接進(jìn)行數(shù)據(jù)更新。但是,如前所述,其缺點(diǎn)是數(shù)據(jù)傳送量大,浪費(fèi)系統(tǒng)資源。
由此,本發(fā)明提出基于“增量數(shù)據(jù)”的數(shù)據(jù)更新方法、裝置和系統(tǒng),本發(fā)明提出的 “增量數(shù)據(jù)”是指更新后的數(shù)據(jù)相對(duì)于更新前數(shù)據(jù)的變化的數(shù)據(jù)。所謂的變化表示的是更新后的數(shù)據(jù)與更新前的數(shù)據(jù)的區(qū)別。也就是說,增量數(shù)據(jù)是將更新前的數(shù)據(jù)和更新后的數(shù)據(jù)進(jìn)行某種運(yùn)算得到的數(shù)據(jù)。而具體采用何種運(yùn)算,則可根據(jù)數(shù)據(jù)的類型來決定。
若更新前的數(shù)據(jù)和更新后的數(shù)據(jù)均為數(shù)字,則所述運(yùn)算方法可以是簡(jiǎn)單的數(shù)學(xué)運(yùn)算。例如,當(dāng)更新前的數(shù)據(jù) 為2,更新后的數(shù)據(jù)為3,則增量數(shù)據(jù)可以等于更新后的數(shù)據(jù)減去更新前的數(shù)據(jù),即增量數(shù)據(jù)為=3-2 = I。
若更新前的數(shù)據(jù)和更新后的數(shù)據(jù)均為收藏夾,則所述運(yùn)算方法可以是一種比較算法。例如,更新前的收藏夾包括“網(wǎng)址1”、“網(wǎng)址2”、“網(wǎng)址3”,而更新后的收藏夾的包括“網(wǎng)址I ”、“網(wǎng)址2 ”、“網(wǎng)址3 ”和“網(wǎng)址4”,則經(jīng)由比較計(jì)算,得到增量數(shù)據(jù)為“網(wǎng)址4”。
當(dāng)然,以上例子均為數(shù)據(jù)類型比較簡(jiǎn)單的情況,本發(fā)明可以擴(kuò)展到任何的數(shù)據(jù)類型,只要存在更新前的數(shù)據(jù)和更新后的數(shù)據(jù)之間的適當(dāng)?shù)挠?jì)算方法,均可以通過該計(jì)算方法得到增量數(shù)據(jù)。
在目前的網(wǎng)絡(luò)通信中,針對(duì)數(shù)據(jù)處理設(shè)備和數(shù)據(jù)傳輸系統(tǒng)而言,最廣泛應(yīng)用的數(shù)據(jù)分為兩種,一種是描述性數(shù)據(jù),另一種是二進(jìn)制數(shù)據(jù)。描述性數(shù)據(jù)是用能夠被人理解的語言來描述信息的數(shù)據(jù),適用于人機(jī)交互,例如自然語言數(shù)據(jù)、超文本語言數(shù)據(jù)(諸如HTML、 XML和Json等)和高級(jí)編程語言(C語言、Javascript等)的程序代碼數(shù)據(jù),等等。對(duì)于描述性數(shù)據(jù),本發(fā)明可以根據(jù)現(xiàn)有的數(shù)據(jù)格式來選擇計(jì)算方法,也可以在現(xiàn)有的數(shù)據(jù)格式中設(shè)定專門的數(shù)據(jù)標(biāo)簽,以利于計(jì)算的進(jìn)行。例如,對(duì)于XML格式的數(shù)據(jù),可以依據(jù)XML文件中既有的標(biāo)簽來計(jì)算增量數(shù)據(jù),也可以自己定義用于增量數(shù)據(jù)計(jì)算的專用標(biāo)簽。
例如,對(duì)于如下需要更新的XML的代碼為
<data>〈method iiame=”olcr><title value=” 丨 I i[.123”><id value=’’0114”><creattime=”2012.08.20”〉<pos value=”abc”></data>
用于更新的全量數(shù)據(jù)的XML代碼為
<data>〈method narne=’’new’’>〈title value=” 日記.123”>
<id value=”。114”> <creattime=’’2012.08.21’’><pos value=”abc”></data>
則增量數(shù)據(jù)可以為
{0114, creattime, Rep, 2010. 08. 21},
其中“0114 “表示更新前的數(shù)據(jù)的id, creattime表示該id下的標(biāo)簽名,Rep表示 “替換”,2010. 08. 21表示替換內(nèi)容。
由此可見,在更新描述性數(shù)據(jù)時(shí),增量數(shù)據(jù)也可以是用于描述變化量的描述性數(shù)據(jù),通常來說,增量數(shù)據(jù)的數(shù)據(jù)量相比于全量的更新后的數(shù)據(jù)會(huì)小很多,特別是對(duì)于更新前的數(shù)據(jù)龐大,而變化量不太大的情況。
另一種情況是,更新前的數(shù)據(jù)和更新后的數(shù)據(jù)均為二進(jìn)制數(shù)據(jù),二進(jìn)制數(shù)據(jù)在此指的是適合于數(shù)據(jù)處理設(shè)備存儲(chǔ)、傳輸?shù)臄?shù)據(jù),二進(jìn)制數(shù)據(jù)通用、穩(wěn)定、不需要針對(duì)不同應(yīng)用二次開發(fā),例如各種計(jì)算機(jī)文件(包括圖片、視頻)、編譯后的程序代碼等。
在現(xiàn)有技術(shù)中已存在一些針對(duì)通用的二進(jìn)制數(shù)據(jù)進(jìn)行比較的計(jì)算方法。本發(fā)明可以直接采用現(xiàn)有技術(shù)中的計(jì)算方法,本領(lǐng)域普通技術(shù)人員也可以通過對(duì)已知的算法進(jìn)行適應(yīng)性的變化來設(shè)計(jì)專門用于特定數(shù)據(jù)類型的增量數(shù)據(jù)的計(jì)算方法。
需要注意的是,本發(fā)明采用的計(jì)算方法優(yōu)選為可逆算法。
基于上述關(guān)于增量數(shù)據(jù)的原理,本發(fā)明的用于數(shù)據(jù)處理設(shè)備的數(shù)據(jù)更新方法包括如下兩個(gè)基本步驟,如圖3所示。
(I)將由更新前的數(shù)據(jù)和更新后的數(shù)據(jù)生成的增量數(shù)據(jù)發(fā)送到一個(gè)數(shù)據(jù)處理設(shè)備;
(2)在該數(shù)據(jù)處理設(shè)備中,根據(jù)待更新的數(shù)據(jù)和該增量數(shù)據(jù)形成經(jīng)更新的數(shù)據(jù)。
前文中已經(jīng)說明了如何生成增量數(shù)據(jù),在利用本發(fā)明進(jìn)行數(shù)據(jù)更新時(shí),還需要根據(jù)待更新的數(shù)據(jù)和增量數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。也就是說,本發(fā)明還需要生成全量的經(jīng)更新的數(shù)據(jù),并使生成的全量的經(jīng)更新的數(shù)據(jù)來取代待更新的數(shù)據(jù)。
根據(jù)本發(fā)明,生成經(jīng)更新的數(shù)據(jù)的過程可以是生成增量數(shù)據(jù)的逆運(yùn)算,當(dāng)生成增量數(shù)據(jù)的計(jì)算方法是可逆算法時(shí),使得根據(jù)待更新的數(shù)據(jù)和增量數(shù)據(jù)生成全量的經(jīng)更新的數(shù)據(jù)成為可能。例如,對(duì)于前面例子中的純數(shù)學(xué)運(yùn)算,若更新前的數(shù)據(jù)為2,更新后的數(shù)據(jù)為 3,待更新的數(shù)據(jù)與更新前的數(shù)據(jù)相同,也為2,計(jì)算增量數(shù)據(jù)的算法為更新后的數(shù)據(jù)減去更新前的數(shù)據(jù),即增量數(shù)據(jù)為=3-2 = 1,那么,生成全量的經(jīng)更新的數(shù)據(jù)的算法為上述算法的逆運(yùn)算,即待更新的數(shù)據(jù)加上增量數(shù)據(jù),即經(jīng)更新的數(shù)據(jù)為=2+1 = 3。
對(duì)于描述性增量數(shù)據(jù),則所述的逆運(yùn)算可以是解析所述描述性增量數(shù)據(jù)來產(chǎn)生經(jīng)更新的數(shù)據(jù)。例如,對(duì)于描述性增量數(shù)據(jù){0114,creattime,R印,2010. 08. 21},可以將其解析為對(duì)ID為0114中的標(biāo)簽creattime的值替換為2010. 08. 21。
同理,對(duì)于二進(jìn)制數(shù)據(jù),可以使用前述的針對(duì)二進(jìn)制數(shù)據(jù)計(jì)算增量數(shù)據(jù)的算法的逆算法來由待更新的數(shù)據(jù)和增量數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照附圖,對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。
<第一實(shí)施例>
圖4是本發(fā)明的第一實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的場(chǎng)景示意圖。從圖 4可以看出,該第一實(shí)施例的方法與圖1所示的方法的系統(tǒng)架構(gòu)類似。該實(shí)施例實(shí)現(xiàn)的是一種在客戶端之間同步數(shù)據(jù)的方法,所述客戶端包括上傳客戶端和下載客戶端,上傳客戶端和下載客戶端均能夠與一個(gè)服務(wù)器進(jìn)行數(shù)據(jù)交換。
所述上傳客戶端是指用于將數(shù)據(jù)傳送至所述服務(wù)器的客戶端,所述下載客戶端是指用于從服務(wù)器下載數(shù)據(jù)的客戶端。
為了區(qū)分每次更新后的數(shù)據(jù),也為了描述方便,在此使用了版本這一概念。在本發(fā)明中,原始數(shù)據(jù)以及在原始數(shù)據(jù)基礎(chǔ)之上進(jìn)行的每一次更新都對(duì)應(yīng)一個(gè)版本。版本用版本號(hào)來表示。例如設(shè)定原始數(shù)據(jù)的版本號(hào)可以是1. O. O. 0,第一次更新的數(shù)據(jù)版本號(hào)為1. O. O. 1,第二次更新的數(shù)據(jù)版本號(hào)為1. O. O. 2,以此類推。根據(jù)本發(fā)明,原始數(shù)據(jù)也可為空數(shù)據(jù)。
圖5是本發(fā)明的第一實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的流程圖。如圖5所示。本發(fā)明的方法包括三個(gè)步驟
首先,上傳客戶端根據(jù)更新前的數(shù)據(jù)和更新后的數(shù)據(jù)產(chǎn)生增量數(shù)據(jù),并將該增量數(shù)據(jù)上傳到服務(wù)器中;
接著,所述服務(wù)器接收由所述上傳客戶端傳送的所述增量數(shù)據(jù),并將該增量數(shù)據(jù)在該服務(wù)器上進(jìn)行保存;
最后,所述服務(wù)器將所述增量數(shù)據(jù)發(fā)送到下載客戶端,下載客戶端根據(jù)所述待更新的數(shù)據(jù)和該增量數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。
上述方法能夠?qū)崿F(xiàn)的前提是上傳客戶端保存有更新前的數(shù)據(jù)和更新后的數(shù)據(jù),下載客戶端中保存有待更新的數(shù)據(jù),待更新數(shù)據(jù)可以為空。此外,服務(wù)器中可以只保存增量數(shù)據(jù),也可以同時(shí)保存全量的更新后的數(shù)據(jù)。
根據(jù)本發(fā)明,所述上傳客戶端和下載客戶端均可以是能夠與所述服務(wù)器進(jìn)行數(shù)據(jù)交換的任一客戶端,對(duì)其個(gè)數(shù)并不限定。
根據(jù)本發(fā)明,將增量數(shù)據(jù)發(fā)送給與該服務(wù)器連接的下載客戶端時(shí),可以依據(jù)預(yù)先設(shè)置發(fā)送增量數(shù)據(jù),該預(yù)先設(shè)置可以是一定的規(guī)則,所述規(guī)則可以是自動(dòng)轉(zhuǎn)發(fā)規(guī)則,也可以是按請(qǐng)求規(guī)則。
自動(dòng)轉(zhuǎn)發(fā)規(guī)則例如是所述服務(wù)器一旦接收到由上傳客戶端上傳的增量數(shù)據(jù)時(shí), 就向所有與之相連接的客戶端發(fā)送數(shù)據(jù)更新通知,詢問其是否需要更新數(shù)據(jù),當(dāng)任一客戶端返回接收更新數(shù)據(jù)時(shí),向該客戶端發(fā)送增量數(shù)據(jù)。又例如,所述服務(wù)器一旦接收到由上傳客戶端上傳的增量數(shù)據(jù)時(shí),就向同一用戶的所有其他客戶端發(fā)送增量數(shù)據(jù)。當(dāng)然,自動(dòng)轉(zhuǎn)發(fā)規(guī)則也可以有別的設(shè)定,例如定時(shí)詢問和發(fā)送,或者一旦客戶端與該服務(wù)器相連,則進(jìn)行詢問和發(fā)送,等等。
按請(qǐng)求規(guī)則是服務(wù)器按照客戶端的請(qǐng)求發(fā)送增量數(shù)據(jù)。也就是說,服務(wù)器在只有接收到數(shù)據(jù)更新請(qǐng)求時(shí),才向發(fā)出請(qǐng)求的客戶端發(fā)送增量數(shù)據(jù)。
該第一實(shí)施例的數(shù)據(jù)更新系統(tǒng)的架構(gòu)如圖6所示,其中I為服務(wù)器,2 5均為客戶端。服務(wù)器包括有通信模塊和數(shù)據(jù)存儲(chǔ)模塊,客戶端包括有通信模塊和數(shù)據(jù)更新模塊。服務(wù)器I的通信模塊與各客戶端2 5的通信模塊均能進(jìn)行數(shù)據(jù)交換。所述客戶端2 5可以分別作為上傳客戶端或者下載客戶端,也可以同時(shí)既作為上傳客戶端,又作為下載客戶端。
當(dāng)作為上傳客戶端時(shí),數(shù)據(jù)更新模塊用于根據(jù)更新前的數(shù)據(jù)和更新后的數(shù)據(jù)產(chǎn)生增量數(shù)據(jù);通信模塊用于將包括增量數(shù)據(jù)的數(shù)據(jù)發(fā)送到所述服務(wù)器。
當(dāng)作為下載客戶端時(shí),通信模塊用于從所述服務(wù)器接收數(shù)據(jù),該數(shù)據(jù)包括增量數(shù)據(jù),數(shù)據(jù)更新模塊用于根據(jù)該客戶端保存的待更新的數(shù)據(jù)與該接收的數(shù)據(jù)產(chǎn)生經(jīng)更新的數(shù)據(jù)。
在本實(shí)施例中,各客戶端的數(shù)據(jù)更新模塊既能夠根據(jù)更新前的數(shù)據(jù)及更新后的數(shù)據(jù)產(chǎn)生增量數(shù)據(jù),也能夠根據(jù)待更新的數(shù)據(jù)和增量數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。通信模塊既能夠用于上傳數(shù)據(jù),也用于下載數(shù)據(jù)。當(dāng)客戶端2 5中的任一客戶端產(chǎn)生了增量數(shù)據(jù)并通過其通信模塊將包括增量數(shù)據(jù)的數(shù)據(jù)發(fā)送到服務(wù)器I時(shí),該客戶端即作為此次更新的上傳客戶端;當(dāng)客戶端2 5中的任一客戶端通過其通信模塊從服務(wù)器下載數(shù)據(jù)時(shí),該客戶端即為此次更新的下載客戶端。
服務(wù)器的數(shù)據(jù)存儲(chǔ)模塊用于存儲(chǔ)由上傳客戶端上傳的增量數(shù)據(jù)。根據(jù)本發(fā)明的一種實(shí)施方式,服務(wù)器在保存增量數(shù)據(jù)時(shí),還保存該增量數(shù)據(jù)的版本信息,例如是一個(gè)版本號(hào)。
服務(wù)器的通信模塊一方面用于從上傳客戶端接收增量數(shù)據(jù),另一面,還用于根據(jù)一定的規(guī)則,將該增量數(shù)據(jù)發(fā)送到任一需要進(jìn)行數(shù)據(jù)更新的下載客戶端,以便該下載客戶端根據(jù)該增量數(shù)據(jù)進(jìn)行更新。所述的規(guī)則如前所述,在此不再贅述。
圖5所示的客戶端數(shù)量為4個(gè),但這僅僅是示意情況。如前所述,本發(fā)明對(duì)于客戶端的數(shù)量不作限制。
<第二實(shí)施例>
圖7是本發(fā)明的第二實(shí)施例的基于增量數(shù)據(jù)的數(shù)據(jù)更新方法的流程圖。
如前所述,第一實(shí)施例描述了根據(jù)本發(fā)明的數(shù)據(jù)更新方法進(jìn)行一次數(shù)據(jù)更新的流程。該第二實(shí)施例是在第一實(shí)施例的基礎(chǔ)上實(shí)現(xiàn)基于增量數(shù)據(jù)的多次更新。
對(duì)于進(jìn)行了多次更新之后產(chǎn)生的增量數(shù)據(jù),由于其是在原始數(shù)據(jù)的基礎(chǔ)之上進(jìn)行了多次計(jì)算,因此其數(shù)據(jù)的冗余問題可能會(huì)比較嚴(yán)重。在這種情況下,繼續(xù)采用增量數(shù)據(jù)更新可能不能夠取得相對(duì)更加優(yōu)良的效果。因此,該第二實(shí)施例中,在服務(wù)器中設(shè)定一個(gè)第一閾值,當(dāng)數(shù)據(jù)的版本數(shù)目達(dá)到該第一閾值時(shí),該服務(wù)器要求上傳客戶端將該最新版本的全量的更新后的數(shù)據(jù)發(fā)送到該服務(wù)器,并在該服務(wù)器上保存該全量的更新后的數(shù)據(jù)。
根據(jù)本發(fā)明的一種具體實(shí)施方式
,在服務(wù)器上也同時(shí)保存該全量的更新后的數(shù)據(jù)的版本信息。對(duì)于同一次更新時(shí)的全量的更新后的數(shù)據(jù)和增量數(shù)據(jù),其可以共享一個(gè)版本號(hào)。
例如,若服務(wù)器設(shè)定第一閾值為20,而服務(wù)器中保存了如下版本的數(shù)據(jù),
1. O. O. O原
1. O. O.1增
1. O. O. 2增
1. O. O. 18增
1. O. O. 19增(達(dá)到第20個(gè)版本)
(其中,“原”表示原始數(shù)據(jù),“增”表示增量數(shù)據(jù),可以沒有原始數(shù)據(jù))
此時(shí),服務(wù)器要求發(fā)送1. O. O. 19版的增量數(shù)據(jù)的上傳客戶端將1. O. O. 19版的全量的更新后的數(shù)據(jù)也發(fā)送到該服務(wù)器。于是,服務(wù)器中保存如下版本的數(shù)據(jù)
1. O. O. O原
1. O. O.1增
1. O. O. 2增
1. O. O. 18增
1. O. O. 19增
1. O. O. 19全
(其中,“全’’表示全量的更新后的數(shù)據(jù))。
根據(jù)本發(fā)明的其他實(shí)施例,也可以由上傳客戶端來決定是否上傳全量的更新后的數(shù)據(jù)到服務(wù)器中。
如前所述,在服務(wù)器中保存增量數(shù)據(jù),當(dāng)經(jīng)過多次更新之后,在服務(wù)器中就保存有原始數(shù)據(jù)和基于該原始數(shù)據(jù)的多個(gè)版本的增量數(shù)據(jù)。通常,受限于硬件條件或者基于系統(tǒng)資源的考慮,對(duì)于某個(gè)數(shù)據(jù)(例如一個(gè)軟件或一個(gè)文件),在服務(wù)器上能夠保存的數(shù)據(jù)版本的數(shù)量不可能無限大。因此,還可以為服務(wù)器上的數(shù)據(jù)版本的數(shù)量設(shè)定另一個(gè)上限值,在此稱為第二閾值。根據(jù)本發(fā)明的該實(shí)施例,當(dāng)服務(wù)器上的數(shù)據(jù)版本數(shù)量達(dá)到該第二閾值時(shí),必須刪除較舊版本的數(shù)據(jù),以保持?jǐn)?shù)據(jù)版本的數(shù)目不多于該第二閾值。
根據(jù)本發(fā)明的一種具體實(shí)施方式
,所述第二閾值大于所述第一閾值。并且,在刪除較早版本的數(shù)據(jù)時(shí),至少保留一個(gè)全量的更新后的數(shù)據(jù)或原始數(shù)據(jù)。更優(yōu)選的為,當(dāng)具有多個(gè)全量的更新后的數(shù)據(jù)時(shí),至少保留與當(dāng)前版本最接近的版本的全量的更新后的數(shù)據(jù)。
例如,第二閾值為30,那么結(jié)合以下示例說明根據(jù)第二閾值的版本操作過程。假設(shè)在服務(wù)器中保存如下版本的數(shù)據(jù)
1. O. O. O 原
1. O. O.1 增
1.0.0.2 增
......
1.0.0.18 增
1.0.0.19 增
1. O. O. 19 全
1.0.0.20 增
......
1.0.0.28 增
當(dāng)此時(shí)再有客戶端向服務(wù)器更新該數(shù)據(jù),從而在服務(wù)器中保存新的數(shù)據(jù)版本1. O. O. 29時(shí),該數(shù)據(jù)的版本數(shù)達(dá)到第二閾值30。從而服務(wù)器刪除較早的版本1. O. O. O。在服務(wù)器保存的數(shù)據(jù)版本1. O. O.1至1. O. O. 29中,包括至少一個(gè)全量的數(shù)據(jù),例如在本例中是版本1.0. O. 19全。
版本更新
在該第二實(shí)施例中,服務(wù)器上可能存在有原始數(shù)據(jù)、多個(gè)版本的增量數(shù)據(jù),也可能存在由上傳服務(wù)器傳送的至少一個(gè)全量的更新后的數(shù)據(jù)。在這種情況下,本發(fā)明的數(shù)據(jù)更新方法可進(jìn)行更進(jìn)一步的優(yōu)化。對(duì)于客戶端來說,其版本更新操作可以如下所述·
假如服務(wù)器上存在如下版本的數(shù)據(jù)
1. O. O. O 原
1. O. O.1 增
1.0.0.2 增
......
1.0.0.18 增
1.0.0.19 增
1.0.0.19 全
1.0.0.20 增
1.0.0.21 增
1.0.0.22 增
1.0.0.23 增
根據(jù)本發(fā)明的一種實(shí)施方式,每次客戶端向服務(wù)器請(qǐng)求更新數(shù)據(jù)時(shí),服務(wù)器將最新版本的更新數(shù)據(jù)發(fā)送到該客戶端。該最新版本的更新數(shù)據(jù)可能是增量數(shù)據(jù),也可能是全量的更新后的數(shù)據(jù)。根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,當(dāng)存在同一版本的增量數(shù)據(jù)和全量的更新后的數(shù)據(jù),服務(wù)器將全量的更新后的數(shù)據(jù)發(fā)送給客戶端。
根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,客戶端向服務(wù)器請(qǐng)求更新數(shù)據(jù)時(shí)會(huì)附上該客戶端上的待更新的數(shù)據(jù)的版本信息,例如版本號(hào)。這時(shí),服務(wù)器可以根據(jù)該版本號(hào)與服務(wù)器上所有的數(shù)據(jù)版本號(hào)進(jìn)行比較,以此決定向該客戶端發(fā)送哪些版本的數(shù)據(jù)。
在這種情況下,更優(yōu)選的為,當(dāng)服務(wù)器上存在高于客戶端當(dāng)前版本的全量的更新后的數(shù)據(jù)時(shí),服務(wù)器只選擇將該版本的全量的更新后的數(shù)據(jù)和版本高于該全量的更新后的數(shù)據(jù)的增量數(shù)據(jù)進(jìn)行發(fā)送;更優(yōu)選的為,當(dāng)服務(wù)器上存在不止ー個(gè)高于客戶端版本的全量 的更新后的數(shù)據(jù)時(shí),服務(wù)器只選擇將最高版本的全量的更新后的數(shù)據(jù)和高于該全量的更新 后的數(shù)據(jù)的版本的増量數(shù)據(jù)進(jìn)行發(fā)送。例如,在上面給出的例子中,(I)當(dāng)客戶端當(dāng)前的數(shù)據(jù)版本(即隨請(qǐng)求發(fā)送給服務(wù)器的數(shù)據(jù)版本)為 “I. 0. 0. 22”時(shí),服務(wù)器可以只向客戶端發(fā)送1.0.0.23 增(2)當(dāng)客戶端當(dāng)前的數(shù)據(jù)版本(即隨請(qǐng)求發(fā)送給服務(wù)器的數(shù)據(jù)版本)為 “ 1. 0. 0. 18 ”吋,服務(wù)器可以向客戶端發(fā)送1.0.0.19 增1.0.0.20 增1.0.0.21 增1.0.0.22 增1.0.0.23 增也可以發(fā)送1.0.0.19 全I(xiàn). 0. 0. 20 增1.0.0.21 增1.0.0.22 增1.0.0.23 增。此時(shí),服務(wù)器可以做出選擇,通常可以根據(jù)所發(fā)送的數(shù)據(jù)量來決定,選擇發(fā)送數(shù)據(jù) 量小的。在該例子中,一般來說,全量的更新后的數(shù)據(jù)大于同一版本的増量數(shù)據(jù)。此時(shí),前 ー種方式發(fā)送的數(shù)據(jù)量更小,這時(shí)可以選擇以前ー種方式發(fā)送。(3)當(dāng)客戶端當(dāng)前的數(shù)據(jù)版本(即隨請(qǐng)求發(fā)送給服務(wù)器的數(shù)據(jù)版本)為 “I. 0. 0. I”時(shí),服務(wù)器可以向客戶端發(fā)送I. 0. 0. 2 增......1.0.0.19 增1.0.0.20 增1.0.0.21 增1.0.0.22 增1.0.0.23 增也可以僅發(fā)送I. 0. 0. 19 全1.0.0.20 增1.0.0.21 增1.0.0.22 增1.0.0.23 增而此吋,由于前ー種方式需要發(fā)送的増量數(shù)據(jù)的版本更多,使得發(fā)送的數(shù)據(jù)量可能大于后一種方式,服務(wù)器可以選擇后一種方式進(jìn)行發(fā)送。
然而,上面所述的僅僅是示例,在具體選擇以何種方式發(fā)送時(shí),可以根據(jù)實(shí)際情況具體設(shè)定。例如,在上述的第(2)種情況下,盡管當(dāng)前更新時(shí)以前一種方式進(jìn)行發(fā)送時(shí)的數(shù)據(jù)量更小。但是,若考慮到下一次更新或接下來的更新時(shí),綜合考慮總的發(fā)送數(shù)據(jù)量,也可以選擇第二種方式。
版本恢復(fù)
根據(jù)本發(fā)明的該第二實(shí)施例,當(dāng)服務(wù)器上存儲(chǔ)有多個(gè)版本的數(shù)據(jù)時(shí),客戶端還可以向服務(wù)器請(qǐng)求“版本恢復(fù)”。所謂版本恢復(fù)是指客戶端請(qǐng)求從服務(wù)器恢復(fù)指定版本的數(shù)據(jù)。
當(dāng)客戶端向服務(wù)器發(fā)送一個(gè)版本恢復(fù)請(qǐng)求時(shí),同時(shí)附上需要恢復(fù)的版本信息,例如是一個(gè)版本號(hào)。此時(shí),服務(wù)器通過檢查其上存儲(chǔ)的數(shù)據(jù)的版本,選擇向該客戶端發(fā)送至少一個(gè)全量數(shù)據(jù)和基于該全量數(shù)據(jù)的增量數(shù)據(jù)。
例如,當(dāng)客戶端請(qǐng)求從服務(wù)器恢復(fù)1. O. O. 21版本的數(shù)據(jù),而服務(wù)器上存儲(chǔ)有
1. O. O. O原
1. O. O.1增
1. O. O. 2增

1. O. O. 18增
1. O. O. 19增
1. O. O. 19全
1. O. O. 20增
1. O. O. 21增
1. O. O. 22增
1. O. O. 23增
此時(shí),服務(wù)器可以選擇向該客戶
1. O. O. O原
1. O. O.1增
1. O. O. 2增
1. O. O. 19增
1. O. O. 20增
1. O. O. 21m >曰,
也可以選擇向客戶端發(fā)送
1. O. O. 19全
1. O. O. 20增
1. O. O. 21m >曰O
根據(jù)一種優(yōu)選實(shí)施方式,服務(wù)器可以根據(jù)發(fā)送的數(shù)據(jù)量的大小來決定以哪種方式發(fā)送數(shù)據(jù)。在此示例中,如果后者的數(shù)據(jù)量更小,可以選擇只發(fā)送1. O. 0190版的全量數(shù)據(jù)和1. O. O. 20和1. O. O. 21版的增量數(shù)據(jù)。
圖8顯示了根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)更新方法的系統(tǒng)架構(gòu)圖。如圖8所示, 基本架構(gòu)與第一實(shí)施例類似。
但是,該第二實(shí)施例的服務(wù)器中還包括一個(gè)閾值控制模塊,其用于設(shè)定所述第一閾值和第二閾值,并且根據(jù)第一閾值,控制該通信模塊向上傳服務(wù)器發(fā)出上傳全量的更新后的數(shù)據(jù)的指令,以及根據(jù)第二閾值,控制該服務(wù)器的數(shù)據(jù)存儲(chǔ)模塊刪除較早版本的數(shù)據(jù), 使所存儲(chǔ)的數(shù)據(jù)版本不多于第二閾值。
并且,該閾值控制模塊還用于控制通信模塊向下載客戶端發(fā)送哪些版本的數(shù)據(jù)。 具體的控制方法如前所述,在此不再贅述。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。 各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此, 遵循具體實(shí)施方式
的權(quán)利要求書由此明確地并入該具體實(shí)施方式
,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中。可以把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如 此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中, 不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
權(quán)利要求
1.一種基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器能夠與若干數(shù)據(jù)處理裝置進(jìn)行數(shù)據(jù)交換,該方法包括如下步驟所述服務(wù)器從一個(gè)數(shù)據(jù)處理裝置接收數(shù)據(jù),并將該數(shù)據(jù)保存在該服務(wù)器中,該數(shù)據(jù)包括增量數(shù)據(jù),所述增量數(shù)據(jù)是指該數(shù)據(jù)處理裝置中更新后的數(shù)據(jù)相對(duì)于更新前數(shù)據(jù)的變化的數(shù)據(jù);所述服務(wù)器將其保存的數(shù)據(jù)的至少一部分發(fā)送到另一個(gè)數(shù)據(jù)處理裝置,該另一個(gè)數(shù)據(jù)處理裝置根據(jù)其待更新的數(shù)據(jù)和接收到的數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。
2.如權(quán)利要求1所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器在存儲(chǔ)所述數(shù)據(jù)時(shí), 對(duì)于每個(gè)數(shù)據(jù)同時(shí)存儲(chǔ)該數(shù)據(jù)的版本信息。
3.如權(quán)利要求1所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器按照預(yù)先設(shè)置的規(guī)則將所述數(shù)據(jù)發(fā)送給所述另一個(gè)數(shù)據(jù)處理裝置。
4.如權(quán)利要求1所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器根據(jù)所述另一個(gè)數(shù)據(jù)處理裝置的請(qǐng)求將所述數(shù)據(jù)發(fā)送給所述另一個(gè)數(shù)據(jù)處理裝置。
5.如權(quán)利要求4所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述另一個(gè)數(shù)據(jù)處理裝置的請(qǐng)求中包括該另一個(gè)數(shù)據(jù)處理裝置的待更新的數(shù)據(jù)的版本信息。
6.如權(quán)利要求4所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述另一個(gè)數(shù)據(jù)處理裝置的請(qǐng)求中包括所述另一個(gè)數(shù)據(jù)處理裝置所需的數(shù)據(jù)的版本信息。
7.如權(quán)利要求5或6所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述服務(wù)器根據(jù)所述另一個(gè)數(shù)據(jù)處理裝置的請(qǐng)求中包括的版本信息選擇向所述另一個(gè)數(shù)據(jù)處理裝置發(fā)送的數(shù)據(jù)。
8.如權(quán)利要求1所述的基于服務(wù)器的數(shù)據(jù)更新方法,當(dāng)所述服務(wù)器中的數(shù)據(jù)的版本數(shù)目達(dá)到第一閾值時(shí),該服務(wù)器要求數(shù)據(jù)處理裝置將全量的更新后的數(shù)據(jù)發(fā)送到該服務(wù)器, 所述數(shù)據(jù)處理裝置是指向該服務(wù)器發(fā)送最新版本數(shù)據(jù)的數(shù)據(jù)處理裝置。
9.如權(quán)利要求8所述的基于服務(wù)器的數(shù)據(jù)更新方法,當(dāng)所述服務(wù)器上的數(shù)據(jù)版本數(shù)量達(dá)到第二閾值時(shí),刪除較舊版本的數(shù)據(jù),以保持?jǐn)?shù)據(jù)版本的數(shù)目不多于該第二閾值。
10.如權(quán)利要求9所述的基于服務(wù)器的數(shù)據(jù)更新方法,所述第二閾值大于所述第一閾值,在刪除較早版本的數(shù)據(jù)時(shí),至少保留一個(gè)全量的更新后的數(shù)據(jù)。
11.一種服務(wù)器,用于提供數(shù)據(jù)更新服務(wù),所述服務(wù)器能夠與若干數(shù)據(jù)處理裝置進(jìn)行數(shù)據(jù)交換,該服務(wù)器包括通信模塊,用于從一個(gè)數(shù)據(jù)處理裝置接收數(shù)據(jù),所述數(shù)據(jù)包括增量數(shù)據(jù),所述增量數(shù)據(jù)是指更新后的數(shù)據(jù)相對(duì)于更新前的數(shù)據(jù)的變化的數(shù)據(jù);數(shù)據(jù)存儲(chǔ)模塊,用于保存從所述數(shù)據(jù)處理裝置接收的數(shù)據(jù)。
12.如權(quán)利要求11所述的服務(wù)器,所述通信模塊還用于,將該服務(wù)器中保存的數(shù)據(jù)的至少一部分發(fā)送到另一數(shù)據(jù)處理裝置,以便該另一數(shù)據(jù)處理裝置根據(jù)接收到的數(shù)據(jù)和待更新的數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。
13.如權(quán)利要求12所述的服務(wù)器,還包括一個(gè)閾值控制模塊,其用于設(shè)定第一閾值,并且根據(jù)該第一閾值,控制通信模塊向一個(gè)數(shù)據(jù)處理裝置發(fā)出指令,要求該數(shù)據(jù)處理裝置上傳全量的更新后的數(shù)據(jù),所述數(shù)據(jù)處理裝置是指向該服務(wù)器發(fā)送最新版本數(shù)據(jù)的數(shù)據(jù)處理>j-U ρ α裝直。
14.如權(quán)利要求13所述的服務(wù)器,所述閾值控制模塊還用于設(shè)定第二閾值,并且根據(jù)該第二閾值,控制所述數(shù)據(jù)存儲(chǔ)模塊刪除較早版本的數(shù)據(jù),使所存儲(chǔ)的數(shù)據(jù)版本不多于第二閾值。
15.如權(quán)利要求14所述的服務(wù)器,還包括選擇模塊,用于選擇通信模塊向所述另一數(shù)據(jù)處理裝置發(fā)送的數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種基于服務(wù)器的數(shù)據(jù)更新方法和服務(wù)器,所述服務(wù)器能夠與若干數(shù)據(jù)處理裝置進(jìn)行數(shù)據(jù)交換,該方法包括如下步驟所述服務(wù)器從一個(gè)數(shù)據(jù)處理裝置接收數(shù)據(jù),并將該數(shù)據(jù)保存在該服務(wù)器中,該數(shù)據(jù)包括增量數(shù)據(jù),所述增量數(shù)據(jù)是指該數(shù)據(jù)處理裝置中更新后的數(shù)據(jù)相對(duì)于更新前數(shù)據(jù)的變化的數(shù)據(jù);所述服務(wù)器將其保存的數(shù)據(jù)的至少一部分發(fā)送到另一個(gè)數(shù)據(jù)處理裝置,該另一個(gè)數(shù)據(jù)處理裝置根據(jù)其待更新的數(shù)據(jù)和接收到的數(shù)據(jù)生成經(jīng)更新的數(shù)據(jù)。本發(fā)明能夠減小數(shù)據(jù)更新時(shí)所占用的網(wǎng)絡(luò)帶寬、提高更新的速度、效率和實(shí)時(shí)性。
文檔編號(hào)H04L29/08GK103002011SQ201210422018
公開日2013年3月27日 申請(qǐng)日期2012年10月29日 優(yōu)先權(quán)日2012年10月29日
發(fā)明者薛向旭, 江寬, 吳浩, 劉武, 劉啟明, 王友存, 任寰 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
和平区| 安义县| 上饶县| 信丰县| 长岭县| 嘉善县| 体育| 威远县| 洞头县| 镇坪县| 汕头市| 高雄县| 上饶县| 乌兰察布市| 盐亭县| 绿春县| 榕江县| 中方县| 垦利县| 徐水县| 师宗县| 葫芦岛市| 望都县| 尚义县| 将乐县| 玛曲县| 廊坊市| 那坡县| 富川| 卢湾区| 应城市| 定西市| 城市| 曲水县| 延川县| 加查县| 宣化县| 壶关县| 玉树县| 江西省| 普兰县|