專(zhuān)利名稱(chēng):更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算機(jī)數(shù)據(jù)庫(kù),特別涉及一種可靠的更新數(shù)據(jù)庫(kù)的方法和系統(tǒng)。
背景技術(shù):
隨著數(shù)據(jù)庫(kù)規(guī)模的增加和其結(jié)構(gòu)的高度分布化,要保證網(wǎng)絡(luò)中相關(guān)的數(shù)據(jù)庫(kù)所包含的數(shù)據(jù)版本相同變得越來(lái)越困難。如果一個(gè)數(shù)據(jù)庫(kù)有明顯的變化,其它的數(shù)據(jù)庫(kù)可能需要盡快更新來(lái)產(chǎn)生這些變化。進(jìn)行上述更新可能導(dǎo)致需要經(jīng)常在不同的數(shù)據(jù)庫(kù)中移動(dòng)大量的更新信息。這種處理過(guò)程的潛在復(fù)雜性將是極大的。
當(dāng)系統(tǒng)中的通信不可靠時(shí),這樣的問(wèn)題將進(jìn)一步擴(kuò)大。在這種情況下,數(shù)據(jù)會(huì)在傳輸過(guò)程中丟失。于是數(shù)據(jù)就必須重新傳輸,并且導(dǎo)致其它的數(shù)據(jù)庫(kù)進(jìn)行再次更新。這樣的重復(fù)將明顯降低系統(tǒng)的工作效率,以及數(shù)據(jù)庫(kù)中所包含的最新數(shù)據(jù)的程度。
圖1所示是根據(jù)本發(fā)明一種實(shí)施方式的系統(tǒng)框圖。
圖2所示是根據(jù)本發(fā)明一種實(shí)施方式的中心系統(tǒng)框圖。
圖3所示是根據(jù)本發(fā)明一種實(shí)施方式,將數(shù)據(jù)庫(kù)更新從本地?cái)?shù)據(jù)庫(kù)向遠(yuǎn)程數(shù)據(jù)庫(kù)傳輸?shù)睦印?br>
圖4所示是根據(jù)本發(fā)明一種實(shí)施方式的發(fā)送文件。
圖5所示是根據(jù)本發(fā)明一種實(shí)施方式的初始發(fā)送文件。
圖6所示是舉例說(shuō)明根據(jù)本發(fā)明一種實(shí)施方式,生成發(fā)送文件以及生成初始化發(fā)送文件的時(shí)間表。
圖7所示是根據(jù)本發(fā)明一種實(shí)施方式,生成本地?cái)?shù)據(jù)庫(kù)的更新文件的流程圖。
圖8所示是根據(jù)本發(fā)明一種實(shí)施方式,從遠(yuǎn)程數(shù)據(jù)庫(kù)接收來(lái)自本地?cái)?shù)據(jù)庫(kù)的更新文件的流程圖。
圖9所示是根據(jù)本發(fā)明另一種實(shí)施方式,從遠(yuǎn)程數(shù)據(jù)庫(kù)接收并驗(yàn)證來(lái)自本地?cái)?shù)據(jù)庫(kù)的更新文件的流程圖。
圖10A所示是根據(jù)本發(fā)明一種實(shí)施方式的證實(shí)更新文件的流程圖。
圖10B所示是根據(jù)本發(fā)明另一種實(shí)施方式的證實(shí)更新文件的流程圖。
圖11所示是舉例說(shuō)明根據(jù)本發(fā)明一種實(shí)施方式的證實(shí)更新文件的示意圖。
詳細(xì)描述本發(fā)明提供一種可靠的通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)(210)的方法和系統(tǒng)。在具體實(shí)施方式
中,基于本地?cái)?shù)據(jù)庫(kù)所增加的變化,生成一定數(shù)量的的定期更新(以下稱(chēng)為“發(fā)送文件”)。每個(gè)定期更新包括至少一個(gè)事務(wù)處理。生成一個(gè)初始更新(以下稱(chēng)為“初始發(fā)送文件”),包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本。另外,生成一個(gè)與起始時(shí)刻之前最后的周期更新相關(guān)聯(lián)的標(biāo)識(shí)符,以及一個(gè)與起始時(shí)刻之前最后所提交的事務(wù)處理相關(guān)聯(lián)的標(biāo)識(shí)符。具體的實(shí)施方式還方便地提供對(duì)發(fā)送文件以及初始化發(fā)送文件的分解,來(lái)進(jìn)行遠(yuǎn)程數(shù)據(jù)庫(kù)的可靠的更新。
圖1所示是根據(jù)本發(fā)明一種實(shí)施方式的系統(tǒng)框圖。通常,系統(tǒng)100具有一個(gè)大容量且內(nèi)置有存儲(chǔ)器的數(shù)據(jù)庫(kù),通過(guò)網(wǎng)絡(luò)接收搜索請(qǐng)求并且提供搜索應(yīng)答。例如,系統(tǒng)100可以是一個(gè)均衡多處理(SMP)計(jì)算機(jī),比如,紐約Armonk IBM公司制造的IBM RS/6000 M80或S80,加利福尼亞州的Santa Clara的Sun Microsystem,Inc.制造的SunEnterpriseTM10000等等;系統(tǒng)100也可以是多處理的個(gè)人計(jì)算機(jī),比如加利福尼亞州Palo Alto的Hewlett-Packard公司制造的CompaqProliantTMML530(包括兩個(gè)因特爾奔騰III866Mhz處理器)。系統(tǒng)100也可以包括一個(gè)多處理操作系統(tǒng),比如IBM AIX4,Sun SolarsTM8操作環(huán)境,Red Hat Linux6.2等等。系統(tǒng)100通過(guò)網(wǎng)絡(luò)124接收定期更新,同時(shí)結(jié)合到數(shù)據(jù)庫(kù)中。本發(fā)明只需通過(guò)將每個(gè)更新結(jié)合到數(shù)據(jù)庫(kù)中,而不需要使用數(shù)據(jù)庫(kù)鎖或者通路控制,就可達(dá)到很高的數(shù)據(jù)庫(kù)搜索量以及更新量。
在一種實(shí)施方式中,系統(tǒng)100可包括至少一個(gè)連接到總線101的處理器102-1。處理器102-1可包括一個(gè)內(nèi)部的高速緩沖存儲(chǔ)器(例如一個(gè)L1高速緩存,圖中未明示)。一個(gè)第二高速緩沖存儲(chǔ)器103-1(例如一個(gè)L2/L3高速緩存,L2/L3高速緩存等)位于處理器102-1和總線101之間。在一種優(yōu)選的實(shí)施方式中,系統(tǒng)100可包括一定數(shù)量的處理器102-1……102-P連接到總線101。一定數(shù)量的第二高速緩沖存儲(chǔ)器103-1……103-P也可位于一定數(shù)量的處理器102-1……102-P與總線101之間(例如一個(gè)瀏覽結(jié)構(gòu)),或者等同的,至少一個(gè)第二高速緩沖存儲(chǔ)器103-1連接到總線101(例如一個(gè)察看結(jié)構(gòu))。系統(tǒng)100包括存儲(chǔ)器104連接到總線101,比如隨機(jī)存儲(chǔ)器(RAM),存儲(chǔ)一定數(shù)量的處理器102-1……102-P所執(zhí)行的信息和指令等。
存儲(chǔ)器104可存儲(chǔ)一個(gè)大容量數(shù)據(jù)庫(kù),例如,用來(lái)傳送互聯(lián)網(wǎng)域名到互聯(lián)網(wǎng)地址,用來(lái)傳送名稱(chēng)或電話號(hào)碼到網(wǎng)絡(luò)地址,用來(lái)提供和更新用戶(hù)分布的數(shù)據(jù),用來(lái)提供和更新用戶(hù)存在的數(shù)據(jù)等等。有利的,數(shù)據(jù)庫(kù)的容量以及每秒傳送的數(shù)據(jù)量都可以很大。例如,存儲(chǔ)器104可包括至少64GB的RAM,并具有一個(gè)500M域名記錄數(shù)據(jù)庫(kù)(即500×106),一個(gè)500M用戶(hù)記錄數(shù)據(jù)庫(kù)以及一個(gè)450M記錄電話號(hào)碼的便攜式數(shù)據(jù)庫(kù)等。
在一種64比特系統(tǒng)結(jié)構(gòu)的實(shí)施方式中,例如,系統(tǒng)包括至少一個(gè)64比特big endian處理器102-1,連接到至少64比特總線101和64比特存儲(chǔ)器104,使用一個(gè)單獨(dú)無(wú)干擾的操作,可將一個(gè)8字節(jié)的指針值寫(xiě)入到存儲(chǔ)器地址中的一個(gè)8字節(jié)邊界(即存儲(chǔ)器地址除以8或者例如8N)。通常,第二高速緩沖存儲(chǔ)器103-1的存在可簡(jiǎn)單地延遲8字節(jié)指針寫(xiě)入存儲(chǔ)器104。例如,在一種實(shí)施方式中,第二高速緩沖存儲(chǔ)器103-1可以是一個(gè)使用通寫(xiě)模式的瀏覽高速緩沖存儲(chǔ)器,所以不受到干擾的情況下可使用一個(gè)簡(jiǎn)單的8字節(jié)存儲(chǔ)指令,將8字節(jié)的數(shù)據(jù)從處理器102-1移動(dòng)到存儲(chǔ)器104,,并且只需在兩個(gè)系統(tǒng)時(shí)鐘回路內(nèi)。在另一種實(shí)施方式中,第二高速緩沖存儲(chǔ)器103-1是一個(gè)使用反寫(xiě)模式的瀏覽高速緩沖存儲(chǔ)器,所以上述8字節(jié)指針可以首先寫(xiě)入第二高速緩沖存儲(chǔ)器103-1,以后的某一時(shí)刻再寫(xiě)入存儲(chǔ)器104,比如,當(dāng)存儲(chǔ)8字節(jié)指針的高速緩沖存儲(chǔ)線寫(xiě)入存儲(chǔ)器104的時(shí)刻(即例如特定的高速緩沖存儲(chǔ)線或整個(gè)第二高速緩沖存儲(chǔ)器“溢出”的時(shí)候)。
根本的,如果是處理器102-1,那么當(dāng)數(shù)據(jù)被寄存在處理器102-1的輸出管腳時(shí),所有被第二高速緩沖存儲(chǔ)器103-1所延遲的8字節(jié)數(shù)據(jù),都以持續(xù)無(wú)干擾的方式寫(xiě)入存儲(chǔ)器104;如果是處理器102-2……102-P的結(jié)構(gòu),那么一旦數(shù)據(jù)被寄存在處理器102-1的輸出管腳上,所有的8字節(jié)數(shù)據(jù)都以持續(xù)無(wú)干擾的方式寫(xiě)入存儲(chǔ)器104,它們被覆蓋高速緩沖存儲(chǔ)器103-1……103-P的內(nèi)部協(xié)議所強(qiáng)制執(zhí)行,從而延遲了它們寫(xiě)入存儲(chǔ)器104。
但是,當(dāng)一個(gè)8字節(jié)指針值被寫(xiě)入存儲(chǔ)器104的偏移位置,例如一個(gè)跨越8字節(jié)邊界的存儲(chǔ)地址,所有8字節(jié)數(shù)據(jù)就不能用一個(gè)單獨(dú)的8字節(jié)存儲(chǔ)指令從處理器102-1傳送。那么處理器102-1發(fā)出兩個(gè)單獨(dú)且不同的指令。例如,如果存儲(chǔ)地址開(kāi)始于8字節(jié)邊界(例如8N-4)之前的4個(gè)字節(jié),第一存儲(chǔ)指令傳送4個(gè)最重要的字節(jié)給存儲(chǔ)器104(例如8N-4),而第二存儲(chǔ)指令傳送4個(gè)最不重要的字節(jié)給存儲(chǔ)器104(例如8N)。重要的是,在這兩個(gè)單獨(dú)的存儲(chǔ)指令之間,處理器102-1可能會(huì)被干擾,或者存儲(chǔ)器102-1可能會(huì)將對(duì)總線101的控制釋放給另一系統(tǒng)部件(例如處理器102-P等)。因此,位于存儲(chǔ)器104中的指針值要直到處理器102-1完成第二存儲(chǔ)指令時(shí)才開(kāi)始有效。如果另一個(gè)部件開(kāi)始向該存儲(chǔ)器位置進(jìn)行單獨(dú)無(wú)干擾的讀取,一個(gè)無(wú)效值將會(huì)變回一個(gè)可能有效的值。
類(lèi)似的,一個(gè)新的4字節(jié)指針值可利用一個(gè)單獨(dú)無(wú)干擾的操作寫(xiě)入除以4的存儲(chǔ)地址(例如4N)。注意在以上討論的實(shí)施方式中,一個(gè)4字節(jié)指針值可用一個(gè)單獨(dú)存儲(chǔ)指令寫(xiě)入8N-4的存儲(chǔ)位置。當(dāng)然,如果一個(gè)4字節(jié)指針值寫(xiě)入一個(gè)跨越4字節(jié)邊界的位置,例如4N-2,那么所有4字節(jié)數(shù)據(jù)就不能用一個(gè)單獨(dú)存儲(chǔ)指令從102-1傳送,并且存儲(chǔ)器104中的指針值可能會(huì)無(wú)效一段時(shí)間。
系統(tǒng)100也可包括一個(gè)只讀存儲(chǔ)器(ROM)106,或者其它靜態(tài)存儲(chǔ)設(shè)備連接到總線101,用于存儲(chǔ)處理器102-1的靜態(tài)數(shù)據(jù)以及指令。一個(gè)存儲(chǔ)設(shè)備108,例如磁盤(pán)或光盤(pán),可連接到總線101用于存儲(chǔ)信息和指令。系統(tǒng)100也可包括顯示裝置110(例如LCD顯示器)和輸入裝置112(例如鍵盤(pán),鼠標(biāo),跟蹤球等)連接到總線101。系統(tǒng)100也可包括一定數(shù)量網(wǎng)絡(luò)接口114-1……114-0,可用于接收和發(fā)送電、電磁或光信號(hào),它們載有表示不同種類(lèi)信息的數(shù)字信號(hào)流。在一種實(shí)施方式中,網(wǎng)絡(luò)接口114-1可連接到總線101和本地局域網(wǎng)(LAN)122,而網(wǎng)絡(luò)接口114-0可連接到總線101和廣域網(wǎng)(WAN)124。一定數(shù)量的網(wǎng)絡(luò)接口114-1……114-0可支持不同的網(wǎng)絡(luò)協(xié)議,包括例如吉比特以太網(wǎng)Gigabit Ethernet(例如2002年出版的IEEE標(biāo)準(zhǔn)802.3-2002),F(xiàn)iber Channel(例如1994年出版的ANSI標(biāo)準(zhǔn)X.3230-1994),等等。一定數(shù)量的網(wǎng)絡(luò)計(jì)算機(jī)102-1……102-N可連接到LAN122和WAN124。在一種實(shí)施方式中,LAN122和WAN124可以是物理上不同的網(wǎng)絡(luò),而在另一種實(shí)施方式中,LAN122和WAN124也可以經(jīng)由網(wǎng)關(guān)或路由器(圖中未示出)。等同的,LAN122和WAN124也可以是相同的網(wǎng)絡(luò)。
如上所述,系統(tǒng)100可提供域名服務(wù)器(DNS)解析服務(wù)。在一個(gè)DNS解析的實(shí)施方式中,DNS解析服務(wù)通常在網(wǎng)絡(luò)傳輸和數(shù)據(jù)查找功能中分開(kāi)。例如,系統(tǒng)100可以是一個(gè)后端查找引擎(LUE),將其優(yōu)化用于大量數(shù)據(jù)系列中的數(shù)據(jù)查找;而一定數(shù)量的網(wǎng)絡(luò)計(jì)算機(jī)120-1……120-N可以是一定數(shù)量的前端協(xié)議引擎(PE),將其優(yōu)化用于網(wǎng)絡(luò)處理和傳輸。LUE可以是一個(gè)在存儲(chǔ)器104中存儲(chǔ)整個(gè)DNS記錄序列的大功率多處理服務(wù)器,便于高速,高量的搜索和更新。在另一種等同的實(shí)施方式中,DNS解析服務(wù)可由一定數(shù)量的大功率多處理服務(wù)器或者LUE提供,每個(gè)服務(wù)器或LUE都在存儲(chǔ)器中存儲(chǔ)整個(gè)DNS記錄系列的子集,便于高速,高量的搜索和更新。
相反的,所述一定數(shù)量的PE可以是普通的低分布的基于PC的機(jī)器,運(yùn)行一個(gè)可有效的多任務(wù)操作系統(tǒng)(例如Red Hat Linux6.2),可最小化LUE上網(wǎng)絡(luò)處理傳輸負(fù)載,從而最大化用于DNS解析的可用資源。PE掌握有線線路DNS協(xié)議的細(xì)微差別,通過(guò)LAN122應(yīng)答無(wú)效的DNS請(qǐng)求并且復(fù)用有效的DNS請(qǐng)求給LUE。在另一種等同的實(shí)施方式中,具有多個(gè)LUE存儲(chǔ)DNS記錄子集,PE將決定哪個(gè)LUE接收每個(gè)有效的DNS記錄子集,并且復(fù)用有效DNS請(qǐng)求給合適的LUE。用于單個(gè)LUT的PE的數(shù)目將由,例如,每秒所處理的DNS請(qǐng)求的數(shù)目和特定系統(tǒng)的性能特征來(lái)決定。其它的尺度也可用來(lái)決定這個(gè)適當(dāng)?shù)挠成浔壤凸ぷ髑闆r。
通常,其它的大量的基于請(qǐng)求的實(shí)施方式也可支持,包括例如,電話號(hào)碼解析,SS7信號(hào)處理,地理位置確定,電話號(hào)碼到用戶(hù)的映射,用戶(hù)位置和其存在的確認(rèn)等。
在一種實(shí)施方式中,一個(gè)中心在線事務(wù)處理(OLTP)服務(wù)器140-1可連接到WAN124,并且接收來(lái)自不同來(lái)源的對(duì)數(shù)據(jù)庫(kù)142-1所進(jìn)行的添加,修改和刪除(即更新操作)。OLTP服務(wù)器140-1可通過(guò)WAN124將包括一個(gè)本地?cái)?shù)據(jù)庫(kù)140-2復(fù)制件的更新發(fā)送給系統(tǒng)100。OLTP服務(wù)器140-1可被優(yōu)化來(lái)以不同的形式和協(xié)議進(jìn)行更新的通信,包括例如超文本傳輸協(xié)議(HTTP),注冊(cè)協(xié)議(RRP),可擴(kuò)展暫時(shí)協(xié)議(EPP),服務(wù)管理系統(tǒng)/800機(jī)制普通接口(MGI),以及其它的在線暫時(shí)協(xié)議。一個(gè)只讀LUE星陣可被應(yīng)用于一個(gè)中心和對(duì)話式結(jié)構(gòu),來(lái)提供與其相結(jié)合的來(lái)自O(shè)LTP服務(wù)器140-1的高容量、漸增的更新的高速搜索能力。
在一種等同的實(shí)施方式中,數(shù)據(jù)可被分散到多個(gè)連接到WAN124的OLTP服務(wù)器140-1……140-S。OLTP服務(wù)器140-1……140-S可從不同來(lái)源分別接收對(duì)數(shù)據(jù)庫(kù)142-1……142-S所進(jìn)行的添加,修改和刪除(即更新通信)。OLTP服務(wù)器140-1……140-S可將包括數(shù)據(jù)庫(kù)140-1……140-S復(fù)制件或者其它動(dòng)態(tài)創(chuàng)建的數(shù)據(jù)等的更新,通過(guò)WAN124向系統(tǒng)100發(fā)送。例如,在一種定位的實(shí)施方式中,OLTP服務(wù)器140-1……140-S可接收遠(yuǎn)程傳感器組的更新通信。在另一種等同的實(shí)施方式中,一定數(shù)量的網(wǎng)絡(luò)計(jì)算機(jī)120-1……120-N也可通過(guò)WAN124或LAN122接收添加,修改和刪除(即更新操作)。在這種實(shí)施方式中,一定數(shù)量網(wǎng)絡(luò)計(jì)算機(jī)120-1……120-N就像發(fā)送請(qǐng)求一樣,向系統(tǒng)100發(fā)送更新。
在DNS解析的實(shí)施方式中,每一個(gè)PE(例如每一個(gè)網(wǎng)絡(luò)計(jì)算機(jī)120-1……120-N)可將多個(gè)從廣域網(wǎng)(例如WAN124)接收的DNS請(qǐng)求報(bào)文,結(jié)合或者復(fù)用成為一個(gè)單獨(dú)的請(qǐng)求復(fù)合數(shù)據(jù)包,并且通過(guò)本地局域網(wǎng)(例如LAN122)發(fā)送至LUE(例如系統(tǒng)100)。LUE可將多個(gè)DNS請(qǐng)求報(bào)文應(yīng)答,結(jié)合或者復(fù)用成為一個(gè)單獨(dú)的應(yīng)答復(fù)合數(shù)據(jù)包,并且通過(guò)本地局域網(wǎng)發(fā)送至適當(dāng)?shù)腜E。通常,應(yīng)答復(fù)合數(shù)據(jù)包最大長(zhǎng)度限定在網(wǎng)絡(luò)物理層(例如Gigabit Ethernet)的最大傳輸單元(MTU)之內(nèi)。例如,典型的DNS請(qǐng)求和應(yīng)答報(bào)文長(zhǎng)度分別小于100字節(jié)和200字節(jié),這就允許30個(gè)請(qǐng)求復(fù)用成為一個(gè)單獨(dú)請(qǐng)求復(fù)合數(shù)據(jù)包,15個(gè)應(yīng)答復(fù)用成為一個(gè)單獨(dú)的應(yīng)答復(fù)合數(shù)據(jù)包。但是,一個(gè)單獨(dú)的復(fù)合請(qǐng)求數(shù)據(jù)包中應(yīng)該包含更小數(shù)目的請(qǐng)求(例如20個(gè)請(qǐng)求),目的是避免MTU應(yīng)答時(shí)的溢出。如果有更大的MTU長(zhǎng)度,請(qǐng)求和應(yīng)答復(fù)用的數(shù)目也可相應(yīng)的增加。
每個(gè)多任務(wù)PE包括一個(gè)進(jìn)入線程和一個(gè)輸出線程來(lái)分別管理DNS請(qǐng)求和應(yīng)答。例如,進(jìn)入線程可打亂通過(guò)廣域網(wǎng)接收的DNS請(qǐng)求數(shù)據(jù)包的DNS請(qǐng)求組成部分,并且將幾個(gè)毫秒內(nèi)的請(qǐng)求復(fù)用至一個(gè)單獨(dú)的請(qǐng)求復(fù)合數(shù)據(jù)包。然后進(jìn)入線程通過(guò)本地局域網(wǎng)將請(qǐng)求復(fù)合數(shù)據(jù)包發(fā)送到LUE。反之,輸出線程可從LUE接收應(yīng)答復(fù)合數(shù)據(jù)包,將其中的應(yīng)答解復(fù)用,并將不同的字段排列成為一個(gè)有效的DNS應(yīng)答,使其可通過(guò)廣域網(wǎng)傳輸。通常,如上所述,其余的大容量的基于請(qǐng)求的實(shí)施方式也可是支持的。
在一種實(shí)施方式中,請(qǐng)求復(fù)合數(shù)據(jù)包也可包括與每個(gè)DNS請(qǐng)求相關(guān)聯(lián)的狀態(tài)信息,例如,來(lái)源地址,協(xié)議類(lèi)型等。LUE可將狀態(tài)信息和相關(guān)聯(lián)的DNS應(yīng)答包括在應(yīng)答復(fù)合數(shù)據(jù)包中。然后每個(gè)PE利用來(lái)自LUE傳輸?shù)男畔⒔⒉⒒貍饔行У腄NS應(yīng)答報(bào)文。因此,每個(gè)PE可方便的作為一個(gè)無(wú)狀態(tài)的機(jī)器進(jìn)行操作,即有效的DNS應(yīng)答可由應(yīng)答復(fù)合數(shù)據(jù)包中包含的信息形成。通常,LUE可回傳應(yīng)答復(fù)合數(shù)據(jù)包給PE,即發(fā)送輸入的復(fù)合數(shù)據(jù)包的PE。但是,其它的變形方式明顯也可以。
在一種等同的實(shí)施方式中,每個(gè)PE可在請(qǐng)求復(fù)合數(shù)據(jù)包中包括與每個(gè)DNS請(qǐng)求相關(guān)聯(lián)的狀態(tài)信息,并且包括請(qǐng)求復(fù)合數(shù)據(jù)包的一個(gè)狀態(tài)信息的參數(shù)或操作。LUE可在應(yīng)答復(fù)合數(shù)據(jù)包中包括狀態(tài)信息參數(shù)和相關(guān)DNS應(yīng)答。然后每個(gè)PE利用來(lái)自LUE的狀態(tài)信息參數(shù)和隨后的狀態(tài)信息,建立并回傳有效的DNS應(yīng)答報(bào)文。在這種實(shí)施方式中,LUE可將應(yīng)答復(fù)合數(shù)據(jù)包回傳給PE,即發(fā)送輸入的復(fù)合數(shù)據(jù)包的PE。
圖2所示是根據(jù)本發(fā)明一種實(shí)施方式的中心系統(tǒng)框圖。通常,系統(tǒng)可包括一個(gè)本地?cái)?shù)據(jù)庫(kù)200(可包含在OLTP140中心)和一個(gè)或多個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù)210(可包含在LUE100中),通過(guò)例如互聯(lián)網(wǎng)或LAN122的連接機(jī)制連接到本地?cái)?shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)可發(fā)送和接收更新數(shù)據(jù)。
圖3是根據(jù)本發(fā)明的一種實(shí)施方式,本地?cái)?shù)據(jù)庫(kù)200將F個(gè)發(fā)送文件300-1……300-F以及初始發(fā)送文件310發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù)210,用于更新遠(yuǎn)程數(shù)據(jù)庫(kù)210。更新文件可以是單獨(dú)發(fā)送或者成批發(fā)送,例如復(fù)用發(fā)送文件300,一個(gè)發(fā)送文件300和一個(gè)初始發(fā)送文件310,復(fù)用發(fā)送文件300和一個(gè)初始發(fā)送文件310,只有發(fā)送文件300,或者只有初始發(fā)送文件310。
在本發(fā)明的一種實(shí)施方式中,處理器104可從本地?cái)?shù)據(jù)庫(kù)200接收包含更新數(shù)據(jù)的發(fā)送文件300和/或初始發(fā)送文件310。系統(tǒng)150可在遠(yuǎn)程數(shù)據(jù)庫(kù)210通過(guò)通信接口118接收發(fā)送文件300和初始發(fā)送文件310。然后處理器104將發(fā)送文件300或初始發(fā)送文件310中的更新數(shù)據(jù)與遠(yuǎn)程數(shù)據(jù)庫(kù)210中相應(yīng)的數(shù)據(jù)進(jìn)行比較。如果遠(yuǎn)程數(shù)據(jù)庫(kù)210中的數(shù)據(jù)不同,處理器104可將發(fā)送文件300或初始發(fā)送文件310應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。相應(yīng)的,遠(yuǎn)程數(shù)據(jù)庫(kù)210可依次獲得與本地?cái)?shù)據(jù)庫(kù)200匹配的更新數(shù)據(jù)。
圖4所示是根據(jù)本發(fā)明一種實(shí)施方式的發(fā)送文件300。發(fā)送文件300的字段包括,文件標(biāo)識(shí)符400,文件生成時(shí)間402,文件中的事務(wù)處理數(shù)目N404,文件總長(zhǎng)度406,校驗(yàn)位或類(lèi)似的錯(cuò)誤校驗(yàn)指示符408,以及事務(wù)處理410-1……410-N(包括事務(wù)處理標(biāo)識(shí)符)。這些發(fā)送文件字段只是舉例說(shuō)明,不能作為本發(fā)明實(shí)施方式的限制。任何有用的字段都可包括在發(fā)送文件300中。
發(fā)送文件300包含兩個(gè)時(shí)刻之間本地?cái)?shù)據(jù)庫(kù)200的變化。這些變化包括例如,新標(biāo)識(shí)符的添加(即數(shù)據(jù)記錄的標(biāo)識(shí)符),已有標(biāo)識(shí)符的刪除,與一個(gè)標(biāo)識(shí)符相關(guān)的一個(gè)或多個(gè)數(shù)據(jù)記錄的修改,標(biāo)識(shí)符的重新命名,不操作等等。一個(gè)或多個(gè)這種變化可順序發(fā)生,稱(chēng)為事務(wù)處理。發(fā)送文件300包括這些事務(wù)處理的唯一的標(biāo)識(shí)符。這些事務(wù)處理可按它們?cè)诒镜財(cái)?shù)據(jù)庫(kù)200中發(fā)生的順序記錄在發(fā)送文件300中。另外,對(duì)于那些包括多個(gè)變化的事務(wù)處理,這些變化將按它們?cè)诒镜財(cái)?shù)據(jù)庫(kù)200中發(fā)生的順序記錄在事務(wù)處理中。
通常,事務(wù)處理標(biāo)識(shí)符可按任何順序分配到事務(wù)處理中,即事務(wù)處理標(biāo)識(shí)符不需要隨時(shí)間單調(diào)遞增。例如,依次的兩項(xiàng)事務(wù)處理的事務(wù)處理標(biāo)識(shí)符可首先是10004其次是10002。相應(yīng)的,事務(wù)處理發(fā)生的的順序可由其在當(dāng)前文件300-F或者在先前文件300-(F-1)中的位置來(lái)決定。通常,事務(wù)處理不跨越相鄰的文件300,目的是在一個(gè)發(fā)送文件的應(yīng)用過(guò)程中完成遠(yuǎn)程數(shù)據(jù)庫(kù)的更新。這可以防止由于網(wǎng)絡(luò)延時(shí)對(duì)更新產(chǎn)生的干擾,而這種干擾有可能導(dǎo)致遠(yuǎn)程數(shù)據(jù)庫(kù)210中的錯(cuò)誤更新。
圖5所示是根據(jù)本發(fā)明一種實(shí)施方式的初始發(fā)送文件310。初始發(fā)送文件310的字段可包括,例如,文件標(biāo)識(shí)符500,文件生成時(shí)間502,文件中的事務(wù)處理數(shù)目N504,文件的總長(zhǎng)度506,校驗(yàn)位和或類(lèi)似的錯(cuò)誤校驗(yàn)指示符508,以及整個(gè)本地?cái)?shù)據(jù)庫(kù)的復(fù)制件(數(shù)據(jù))516。初始發(fā)送文件310還可包括字段510,表示在文件310生成之前所生成的最后一個(gè)發(fā)送文件300的文件標(biāo)識(shí)符400,以及字段512,表示在初始發(fā)送文件310生成之前最后對(duì)本地?cái)?shù)據(jù)庫(kù)200所提交的事務(wù)處理。本地和遠(yuǎn)程數(shù)據(jù)庫(kù)200,210中的數(shù)據(jù)可位于數(shù)據(jù)庫(kù)200,210中的列表中,數(shù)據(jù)庫(kù)200,210可支持一個(gè)任意數(shù)目的列表。所以,當(dāng)數(shù)據(jù)庫(kù)包括列表時(shí),初始發(fā)送文件310可包括一個(gè)字段,用于表示每個(gè)列表中所記錄的記錄數(shù)目。例如,域名數(shù)據(jù)庫(kù)可包括一個(gè)域列表和一個(gè)名稱(chēng)服務(wù)器列表。因此,初始發(fā)送文件就包括一個(gè)字段,用于表示域名列表中的記錄數(shù)目,以及一個(gè)字段用于表示名稱(chēng)服務(wù)器列表中的記錄數(shù)目。例如列表名稱(chēng),該字段將指定用于列表中記錄索引的密鑰,以及列表中的記錄數(shù)目。另外,初始發(fā)送文件310可包括一個(gè)字段用于表示初始發(fā)送文件的版本,通常是1.0。這些初始發(fā)送文件的字段只是舉例說(shuō)明,不能作為本發(fā)明實(shí)施方式的限制。任何有用的字段都可包括在初始發(fā)送文件310中。
初始發(fā)送文件310可如前所述包括,例如,整個(gè)本地?cái)?shù)據(jù)庫(kù)200的讀出一致的復(fù)制件。初始發(fā)送文件310可在時(shí)間點(diǎn)ts和tf之間與本地?cái)?shù)據(jù)庫(kù)200形成一致,ts是初始發(fā)送文件310生成起始的時(shí)刻,tf是生成完成的時(shí)刻。因此,在生成初始發(fā)送文件310時(shí)僅有的操作就是一個(gè)“添加”操作。即,在初始發(fā)送文件生成時(shí),整個(gè)本地?cái)?shù)據(jù)庫(kù)200在t時(shí)刻的復(fù)制件將記錄在初始發(fā)送文件310中。因此,可執(zhí)行一個(gè)“添加”操作把本地?cái)?shù)據(jù)庫(kù)200記錄到初始發(fā)送文件310。標(biāo)識(shí)符可以以任何順序記錄在初始發(fā)送文件310中。等同的,如果存在外來(lái)的標(biāo)識(shí)符,已參考的數(shù)據(jù)記錄在正參考的數(shù)據(jù)之前。
字段510和512還可附加提供給初始發(fā)送文件310一個(gè)提示,表示當(dāng)初始發(fā)送310生成時(shí),生成發(fā)送文件300以及向遠(yuǎn)程數(shù)據(jù)庫(kù)210提交了。但是,考慮到發(fā)送文件300和初始發(fā)送文件310的生成之間缺乏相關(guān)性,它們的生成被分解開(kāi)。這樣的結(jié)構(gòu)和過(guò)程可防止一種低效率的操作,即在完成初始發(fā)送文件的生成之前,發(fā)送文件的生成和應(yīng)用一直被延緩。在本發(fā)明的實(shí)施方式中,在生成初始發(fā)送文件310的同時(shí)持續(xù)生成和應(yīng)用發(fā)送文件300,對(duì)發(fā)送文件300進(jìn)行強(qiáng)大的錯(cuò)誤校驗(yàn)以及對(duì)遠(yuǎn)程數(shù)據(jù)庫(kù)210進(jìn)行系統(tǒng)參數(shù)規(guī)定,例如,唯一的系統(tǒng)參數(shù)或者外來(lái)標(biāo)識(shí)符系統(tǒng)參數(shù)。對(duì)系統(tǒng)規(guī)定參數(shù),可阻止那些干擾遠(yuǎn)程數(shù)據(jù)庫(kù)210的相關(guān)模式的事務(wù)處理,從而保護(hù)遠(yuǎn)程數(shù)據(jù)庫(kù)210中資料的完整。例如,唯一的系統(tǒng)參數(shù)可阻止將相同的密鑰多次存儲(chǔ)于數(shù)據(jù)庫(kù)210中。
圖6所示是根據(jù)本發(fā)明一種實(shí)施方式的發(fā)送文件和初始發(fā)送文件的時(shí)間表。在圖中,發(fā)送文件300(sf-5到sf-21)生成于規(guī)則的時(shí)間間隔。在一種等同的實(shí)施方式中,發(fā)送文件也可生成與不規(guī)則的時(shí)間間隔。通常,發(fā)送文件的生成不占用整個(gè)的時(shí)間間隔。例如,如果發(fā)送文件生成的間隔是5分鐘,它并不占用整個(gè)的5分鐘時(shí)間來(lái)完成文件的生成過(guò)程。另外,如果當(dāng)生成發(fā)送文件300的時(shí)候,在本地?cái)?shù)據(jù)庫(kù)200中發(fā)生了變化,那么這些變化將由下一個(gè)發(fā)送文件收集。例如,如果發(fā)送文件sf-4生成開(kāi)始于12:05:00,結(jié)束于12:05:02,那么在12:05:00和12:05:02之間發(fā)生的變化將由收集在12:05:00和12:05:02之間的變化的發(fā)送文件sf-5(即300-5)來(lái)收集。
發(fā)送文件300-5和300-19在圖6中說(shuō)明。這些文件表示,在其它字段之間的文件標(biāo)識(shí)符601(sf-5,sf-19),文件生成時(shí)間603以及事務(wù)處理標(biāo)識(shí)符605(例如10002)。應(yīng)當(dāng)注意事務(wù)處理標(biāo)識(shí)符可以不是順序單調(diào)遞增的。如前所述,事務(wù)處理標(biāo)識(shí)符可具有隨機(jī)值。但是,相關(guān)的事務(wù)處理自身將以它們?cè)诒镜財(cái)?shù)據(jù)庫(kù)中所發(fā)生順序記錄于發(fā)送文件300中。
由于初始發(fā)送文件310的生成和發(fā)送文件300的生成是分解開(kāi)的,初始發(fā)送文件310可生成于任意時(shí)刻。例如,初始發(fā)送文件310可生成于發(fā)送文件300生成之前,期間或之后。圖6所示是初始發(fā)送文件310在第四和第五發(fā)送文件(例如sf-4和sf-5)生成之間生成。
在一種實(shí)施方式中,初始發(fā)送文件310可在其它字段中包含文件標(biāo)識(shí)符610(isf-1),初始發(fā)送文件生成之前最后生成的發(fā)送文件的文件標(biāo)識(shí)符615,以及初始發(fā)送文件生成之前最后提交的事務(wù)處理的事務(wù)處理標(biāo)識(shí)符620。在上述例子中,最后生成的發(fā)送文件是發(fā)送文件sf-4,最后提交的事務(wù)處理是事務(wù)處理10001。初始發(fā)送文件310于12:07:29開(kāi)始生成611。在初始發(fā)送文件310開(kāi)始生成時(shí),發(fā)送文件300-5(sf-5)的前一半,事務(wù)處理10002,100005以及10001都已經(jīng)向本地?cái)?shù)據(jù)庫(kù)200提交了。相應(yīng)的,初始發(fā)送文件310包括這些事務(wù)處理的提示以及將這些事務(wù)處理收集于初始發(fā)送文件310中。但是初始發(fā)送文件310并不了解在初始發(fā)送文件的生成開(kāi)始之后所依次發(fā)生的事務(wù)處理10003和10004。
當(dāng)生成初始發(fā)送文件310時(shí),以發(fā)送文件300-5開(kāi)始的發(fā)送文件將在規(guī)定的間隔生成。這些發(fā)送文件可發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù)210并且應(yīng)用。
生成初始發(fā)送文件310完成于1:15:29,在第18和第19個(gè)發(fā)送文件300(sf-18和sf-19)的生成之間,不會(huì)影響第19個(gè)發(fā)送文件300-9的生成、在遠(yuǎn)程數(shù)據(jù)庫(kù)210接收到初始發(fā)送文件310之后,遠(yuǎn)程數(shù)據(jù)庫(kù)210將不考慮那些在初始發(fā)送文件310之前生成的發(fā)送文件。因?yàn)?,初始發(fā)送文件310已經(jīng)包括了記錄在先前的發(fā)送文件中的本地?cái)?shù)據(jù)庫(kù)210的所有的變化。在上述例子中,遠(yuǎn)程數(shù)據(jù)庫(kù)210可不考慮第1到第4個(gè)發(fā)送文件(sf-1到sf-4)。發(fā)送文件sf-1到sf-4中所記錄的變化已經(jīng)記錄在了初始發(fā)送文件310中。這些在前發(fā)送文件(sf-1到sf-4)可被刪除,替換或存檔。類(lèi)似的,遠(yuǎn)程數(shù)據(jù)庫(kù)210可不考慮在初始發(fā)送文件310生成之前提交的,包含在后來(lái)生成的發(fā)送文件300中的事務(wù)處理。初始發(fā)送文件310在生成時(shí)已經(jīng)包括了這些事務(wù)處理。例如,遠(yuǎn)程數(shù)據(jù)庫(kù)不考慮發(fā)送文件sf-5中的前三項(xiàng)事務(wù)處理10002,10005,10001,因?yàn)檫@些包含在發(fā)送文件sf-5中的事務(wù)處理也記錄在了初始發(fā)送文件310中。這些提交的事務(wù)處理可被刪除,替換或存檔。
圖7所示是根據(jù)本發(fā)明一種實(shí)施例方式的生成本地?cái)?shù)據(jù)庫(kù)的更新文件的流程圖。系統(tǒng)將基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成(705)一定數(shù)量的定期更新,其中每一個(gè)更新包括一個(gè)或多項(xiàng)事務(wù)處理。然后系統(tǒng)把這些定期更新發(fā)送(710)到遠(yuǎn)程數(shù)據(jù)庫(kù)。在生成定期更新的同時(shí),系統(tǒng)在起始時(shí)刻開(kāi)始生成(715)一個(gè)初始更新。初始更新包括整個(gè)本地?cái)?shù)據(jù)庫(kù)的版本。系統(tǒng)確定(720)在起始時(shí)刻之前生成的最后的一個(gè)定期更新以及一個(gè)最后提交的事務(wù)處理。然后系統(tǒng)發(fā)送(725)這些初始更新到遠(yuǎn)程數(shù)據(jù)庫(kù)。初始更新包括一個(gè)與最后的定期更新相關(guān)聯(lián)的更新標(biāo)識(shí)符和一個(gè)與最后提交的事務(wù)處理相關(guān)聯(lián)的事務(wù)處理標(biāo)識(shí)符。
例如,OLTP140可在規(guī)則或不規(guī)則的時(shí)間間隔生成(705)發(fā)送文件300。然后OLTP140將發(fā)送文件300發(fā)送(710)到遠(yuǎn)程數(shù)據(jù)庫(kù)210。當(dāng)生成發(fā)送文件300時(shí),OLTP140在起始時(shí)刻611開(kāi)始生成(715)初始發(fā)送文件310。初始發(fā)送文件310可包括整個(gè)本地?cái)?shù)據(jù)庫(kù)200的復(fù)制件。然后OLTP140確定在初始發(fā)送文件310生成的起始時(shí)刻611之前生成的最后一個(gè)發(fā)送文件300以及最后一個(gè)提交的事務(wù)處理。然后OLTP140將初始發(fā)送文件發(fā)送(725)到遠(yuǎn)程數(shù)據(jù)庫(kù)210。初始發(fā)送文件310包括一個(gè)與最后的發(fā)送文件300相關(guān)聯(lián)的更新標(biāo)識(shí)符615和一個(gè)與最后提交的事務(wù)處理相關(guān)的事務(wù)處理標(biāo)識(shí)符620。
圖8所示是根據(jù)本發(fā)明一種實(shí)施方式,遠(yuǎn)程數(shù)據(jù)庫(kù)從本地?cái)?shù)據(jù)庫(kù)接收更新文件的流程圖。系統(tǒng)接收(805)一定數(shù)量的定期更新。每個(gè)更新包括一個(gè)或多項(xiàng)事務(wù)處理。定期更新可單獨(dú)或成批的接收。系統(tǒng)在某一時(shí)刻接收(810)一個(gè)初始更新。初始更新包括整個(gè)本地?cái)?shù)據(jù)庫(kù)的版本。系統(tǒng)從初始更新中讀取(815)一個(gè)最后定期更新標(biāo)識(shí)符和一個(gè)最后事務(wù)處理標(biāo)識(shí)符。然后系統(tǒng)確定(820)與更新標(biāo)識(shí)符相關(guān)聯(lián)的最后的定期更新以及與事務(wù)處理標(biāo)識(shí)符相關(guān)聯(lián)的最后的事務(wù)處理。所述的定期更新和事務(wù)處理分別是在初始更新之前最后生成和提交的。系統(tǒng)把相應(yīng)的定期更新中余下未提交的事務(wù)處理應(yīng)用(825)于遠(yuǎn)程數(shù)據(jù)庫(kù)。然后系統(tǒng)把最后的定期更新之后生成的余下的定期更新應(yīng)用(830)于遠(yuǎn)程數(shù)據(jù)庫(kù)。應(yīng)用這些初始更新方便的補(bǔ)充了那些先前丟失的定期更新。
例如,LUE100以規(guī)則或不規(guī)則的時(shí)間間隔接收(805)發(fā)送文件300。發(fā)送文件可單獨(dú)或成批的接收。LUE100在某一時(shí)刻接收(810)一個(gè)初始發(fā)送文件310。LUE100從初始發(fā)送文件310中讀取(815)一個(gè)發(fā)送文件標(biāo)識(shí)符615和一個(gè)事務(wù)處理標(biāo)識(shí)符620。然后LUE100確定(820)與發(fā)送文件標(biāo)識(shí)符615相關(guān)聯(lián)的發(fā)送文件以及與事務(wù)處理標(biāo)識(shí)符620相關(guān)聯(lián)的事務(wù)處理605。所述的發(fā)送文件和事務(wù)處理分別是在初始發(fā)送文件310生成之前最后生成和提交的。LUE100把相應(yīng)的發(fā)送文件300中余下未提交的事務(wù)處理605應(yīng)用(825)于遠(yuǎn)程數(shù)據(jù)庫(kù)210。然后LUE100把最后的發(fā)送文件sf-4之后余下的發(fā)送文件300應(yīng)用(830)于遠(yuǎn)程數(shù)據(jù)庫(kù)210。
在一個(gè)等同的實(shí)施方式中,例如LUE100可丟棄或存檔那些沒(méi)有被應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210的,和/或那些生成時(shí)間603在初始發(fā)送文件生成時(shí)間611之前的發(fā)送文件300。丟棄或存檔的發(fā)送文件300包括與發(fā)送文件標(biāo)識(shí)符615相關(guān)聯(lián)的發(fā)送文件sf-4。
應(yīng)當(dāng)理解的是,在應(yīng)用初始發(fā)送文件310之后,由于遠(yuǎn)程數(shù)據(jù)庫(kù)210與初始發(fā)送文件310形成了讀出一致,任何在應(yīng)用初始發(fā)送文件之后應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210的發(fā)送文件300可能丟失。相應(yīng)的,這些其后的發(fā)送文件300被再次應(yīng)用。
在本發(fā)明的一種實(shí)施方式中,發(fā)送文件300和初始發(fā)送文件310可從本地?cái)?shù)據(jù)庫(kù)200傳送至遠(yuǎn)程數(shù)據(jù)庫(kù)210而不需要應(yīng)答信號(hào),即不需要ACK/NACK信號(hào)來(lái)指示文件已成功接收。這可大大減少ACK/NACK信號(hào)所增加的開(kāi)銷(xiāo)。
在一種等同的實(shí)施方式中,一個(gè)ACK/NACK信號(hào)可從遠(yuǎn)程數(shù)據(jù)庫(kù)210發(fā)送來(lái)指示文件的成功接收。在這種實(shí)施方式中,ACK/NACK信號(hào)可以用不可靠的通信在系統(tǒng)中傳輸。
圖9所示是根據(jù)本發(fā)明的另一種實(shí)施方式,系統(tǒng)驗(yàn)證從本地?cái)?shù)據(jù)庫(kù)發(fā)送并由遠(yuǎn)程數(shù)據(jù)庫(kù)接收的更新文件的流程圖。在此,系統(tǒng)發(fā)送(905)一定數(shù)量的定期更新。每個(gè)更新包括一個(gè)或多項(xiàng)事務(wù)處理。定期更新可單獨(dú)或成批發(fā)送。然后系統(tǒng)在某一時(shí)刻發(fā)送(910)一個(gè)初始更新并把這個(gè)初始更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)。初始更新包括整個(gè)本地?cái)?shù)據(jù)庫(kù)的版本。系統(tǒng)首先通過(guò)比較數(shù)據(jù)庫(kù)來(lái)識(shí)別(915)本地?cái)?shù)據(jù)庫(kù)和遠(yuǎn)程數(shù)據(jù)庫(kù)之間的差異。系統(tǒng)驗(yàn)證(920)這個(gè)差異是正確還是錯(cuò)誤。然后系統(tǒng)把定期更新按照本發(fā)明的一種實(shí)施方式應(yīng)用(925)于遠(yuǎn)程數(shù)據(jù)庫(kù)。這種實(shí)施方式可方便的保證在遠(yuǎn)程數(shù)據(jù)庫(kù)中不會(huì)接收來(lái)自本地?cái)?shù)據(jù)庫(kù)的錯(cuò)誤更新。
例如,OLTP140以規(guī)則或不規(guī)則的時(shí)間間隔發(fā)送(905)發(fā)送文件300到遠(yuǎn)程數(shù)據(jù)庫(kù)210。發(fā)送文件300可單獨(dú)或成批發(fā)送。OLTP140在某一時(shí)刻發(fā)送(910)初始發(fā)送文件310到LUE100,LUE可將初始發(fā)送文件310應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。OLTP140通過(guò)比較數(shù)據(jù)庫(kù)來(lái)識(shí)別(915)本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)之間的差異。OLTP140驗(yàn)證(920)這個(gè)差異是正確還是錯(cuò)誤。然后OLTP140通知LUE100把發(fā)送文件300按照本發(fā)明的一種實(shí)施方式應(yīng)用(925)于遠(yuǎn)程數(shù)據(jù)庫(kù)210。然后LUE將發(fā)送文件300應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。
在一種實(shí)施方式中,系統(tǒng)可在標(biāo)識(shí)和驗(yàn)證差異之前應(yīng)用發(fā)送文件和初始發(fā)送文件。等同的,系統(tǒng)也可在標(biāo)識(shí)和驗(yàn)證差異之后應(yīng)用發(fā)送文件和初始發(fā)送文件。
應(yīng)該理解的是對(duì)于那些從來(lái)源通過(guò)網(wǎng)絡(luò)傳送到目標(biāo)、目的是應(yīng)用于目標(biāo)數(shù)據(jù)上的任何數(shù)據(jù),都應(yīng)該執(zhí)行所述驗(yàn)證過(guò)程。
圖10A是根據(jù)本發(fā)明一種實(shí)施方式,發(fā)送文件和初始發(fā)送文件驗(yàn)證的流程圖。在將一定數(shù)量的定期更新和初始更新發(fā)送至遠(yuǎn)程數(shù)據(jù)庫(kù)后,系統(tǒng)將驗(yàn)證這些數(shù)據(jù)。每個(gè)更新包括一個(gè)或多個(gè)對(duì)于本地?cái)?shù)據(jù)庫(kù)操作的事務(wù)處理。每項(xiàng)事務(wù)處理包括一個(gè)或多個(gè)事件。一個(gè)事件是對(duì)一個(gè)數(shù)據(jù)庫(kù)的動(dòng)作或其發(fā)生,例如對(duì)于數(shù)據(jù)庫(kù)中數(shù)據(jù)的添加,修改,刪除等。
首先,系統(tǒng)將遠(yuǎn)程數(shù)據(jù)庫(kù)中的記錄和本地?cái)?shù)據(jù)庫(kù)中相應(yīng)的記錄進(jìn)行比較(1000)。系統(tǒng)生成(1005)一個(gè)描述遠(yuǎn)程和本地?cái)?shù)據(jù)庫(kù)的記錄之間的差異的異常信號(hào),其中針對(duì)每個(gè)差異生成一個(gè)異常信號(hào)。差異是指相同記錄的兩個(gè)版本之間,至少一個(gè)數(shù)據(jù)值的任何不同。例如,本地?cái)?shù)據(jù)庫(kù)中的數(shù)據(jù)記錄是(12345,xyz.com,123.234.345),相應(yīng)的遠(yuǎn)程數(shù)據(jù)庫(kù)中的認(rèn)為是相同的數(shù)據(jù)記錄是(12345,abc.com,123.234.345),可見(jiàn),在記錄的第二數(shù)據(jù)值就存在一個(gè)差異。因此,根據(jù)本發(fā)明的實(shí)施方式就生成一個(gè)異常信號(hào)來(lái)描述這個(gè)差異。這個(gè)異常信號(hào)可以通過(guò)簡(jiǎn)單的指示差異的存在,指示差異的位置,或者描述差異中兩個(gè)數(shù)據(jù)值的不同等來(lái)描述這個(gè)差異。如果認(rèn)為兩個(gè)記錄包含同樣的信息,那么本地?cái)?shù)據(jù)庫(kù)中的數(shù)據(jù)記錄就對(duì)應(yīng)于遠(yuǎn)程數(shù)據(jù)庫(kù)中的記錄(反之亦然)。
應(yīng)該理解的是所述差異是指存在于一條記錄或整個(gè)記錄中一個(gè)或多個(gè)數(shù)據(jù)值的不同。
系統(tǒng)可把每個(gè)異常信號(hào)和異常信號(hào)標(biāo)識(shí)符相關(guān)聯(lián)(1010),其中異常信號(hào)標(biāo)識(shí)符是和記錄的標(biāo)識(shí)符相關(guān)聯(lián)的。例如,數(shù)據(jù)記錄(12345,xyz.com,123.234.345)具有標(biāo)識(shí)符d10。相應(yīng)的,異常信號(hào)標(biāo)識(shí)符也是d10。每個(gè)異常信號(hào)可被歸類(lèi)為多個(gè)異常信號(hào)(或差異)種類(lèi)中的任意一種。形成一個(gè)異常信號(hào)列表,包括異常信號(hào)的種類(lèi)以及歸類(lèi)于其中的異常信號(hào)標(biāo)識(shí)符。異常信號(hào)列表和不同的異常信號(hào)種類(lèi)將在下文進(jìn)行詳細(xì)描述。系統(tǒng)也可把事件標(biāo)識(shí)符和每個(gè)更新的事件相關(guān)聯(lián)(1015),其中事件標(biāo)識(shí)符是和記錄的標(biāo)識(shí)符相關(guān)聯(lián)的。例如,數(shù)據(jù)記錄(12345,xyz.com,123.234.345)具有標(biāo)識(shí)符d10,相應(yīng)的,事件標(biāo)識(shí)符也可以是d10。每個(gè)更新的事件都可從事件記載表中找到。事件記載表可以是一段時(shí)間之內(nèi)在本地?cái)?shù)據(jù)庫(kù)中執(zhí)行事件的列表等。事件記載表將在下文進(jìn)行詳細(xì)的描述。
然后系統(tǒng)確定(1020)記錄的更新是否有效。圖10B所示是根據(jù)本發(fā)明一種實(shí)施方式的驗(yàn)證確定的流程圖。這種確定將如下所述進(jìn)行,每個(gè)事件與每個(gè)異常信號(hào)進(jìn)行比較(1022),如果每個(gè)異常信號(hào)由事件判斷(1024)相符,那么這個(gè)更新被指明(1028)是有效的,并且被應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù);否則,如果每個(gè)異常信號(hào)被事件判斷(1024)不相符,那么這個(gè)更新被指明(1028)是無(wú)效的,并且被當(dāng)作錯(cuò)誤存儲(chǔ)。當(dāng)事件標(biāo)識(shí)符對(duì)應(yīng)于異常信號(hào)標(biāo)識(shí)符,并且相關(guān)的事件對(duì)應(yīng)于和異常信號(hào)種類(lèi)相關(guān)聯(lián)的事件的有效順序時(shí),那么異常信號(hào)判斷為相符。所述的有效順序?qū)⒃谙挛倪M(jìn)行詳細(xì)描述。如果異常信號(hào)判斷為相符,系統(tǒng)將從異常信號(hào)列表中除去異常信號(hào)標(biāo)識(shí)符。被判斷相符的異常信號(hào)是指示這個(gè)差異是有效的,比如遠(yuǎn)程數(shù)據(jù)庫(kù)還沒(méi)有接收到這個(gè)更新,且接收到更新后將與本地?cái)?shù)據(jù)庫(kù)匹配。
在驗(yàn)證期間,系統(tǒng)將在定期和初始更新中識(shí)別潛在的錯(cuò)誤和故障,保證這些更新在結(jié)構(gòu)和語(yǔ)法上是正確的,使得這些更新能夠正確的應(yīng)用而不產(chǎn)生異常信號(hào)或意外的中斷,使得在進(jìn)行本地和遠(yuǎn)程數(shù)據(jù)庫(kù)之間進(jìn)行比較時(shí)可精確的檢測(cè)到錯(cuò)誤,并且使得高分布的數(shù)據(jù)不會(huì)被意外刪除。系統(tǒng)將保證定期和初始更新能夠成功的應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)。
通過(guò)在驗(yàn)證期間嘗試將更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù),便于一些錯(cuò)誤的發(fā)現(xiàn),例如數(shù)據(jù)中心錯(cuò)誤,關(guān)于目標(biāo)已經(jīng)存在于遠(yuǎn)程數(shù)據(jù)庫(kù)中的警告,或者在嘗試應(yīng)用的過(guò)程中發(fā)現(xiàn)外來(lái)標(biāo)識(shí)符的干擾的警告。因此,在執(zhí)行完根據(jù)本發(fā)明一種實(shí)施方式所述的驗(yàn)證過(guò)程,系統(tǒng)將嘗試將這些更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)中。這種嘗試可能失敗,即指示在更新中還有其余的錯(cuò)誤導(dǎo)致更新無(wú)效。相應(yīng)的,就不會(huì)再?lài)L試將這些更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)了。
在一種等同的實(shí)施方式中,在執(zhí)行驗(yàn)證之前,將進(jìn)行一次嘗試,將至少一個(gè)更新應(yīng)用于數(shù)據(jù)庫(kù)。如果嘗試失敗,那么將跳過(guò)驗(yàn)證的過(guò)程,并且丟棄這個(gè)更新。否則,如果嘗試成功,那么將執(zhí)行驗(yàn)證過(guò)程,并且保持有效的更新,無(wú)效的更新將作為差異存儲(chǔ)。
在一種實(shí)施方式中,OLTP140將驗(yàn)證發(fā)送文件300和初始發(fā)送文件310來(lái)保證發(fā)送文件300和初始發(fā)送文件310被成功應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。
在等同的實(shí)施方式中,網(wǎng)絡(luò)計(jì)算機(jī)121,LUE100或者任何已有系統(tǒng)的聯(lián)合設(shè)備也可用于執(zhí)行驗(yàn)證。
關(guān)于圖10A,OLTP140比較本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)210來(lái)確定它們之間的任何異常信號(hào)(或者差異)。異常信號(hào)包括三種數(shù)據(jù)位于遠(yuǎn)程數(shù)據(jù)庫(kù)210中而沒(méi)有位于本地?cái)?shù)據(jù)庫(kù)200中;數(shù)據(jù)位于本地?cái)?shù)據(jù)庫(kù)200中而沒(méi)有位于遠(yuǎn)程數(shù)據(jù)庫(kù)210中,或者相應(yīng)的數(shù)據(jù)位于本地?cái)?shù)據(jù)庫(kù)200以及遠(yuǎn)程數(shù)據(jù)庫(kù)210中,但是該數(shù)據(jù)不同。當(dāng)然,相應(yīng)的位于本地?cái)?shù)據(jù)庫(kù)200以及遠(yuǎn)程數(shù)據(jù)庫(kù)210中的數(shù)據(jù)可以是相同的,這種情況下,數(shù)據(jù)被認(rèn)為有效,從而不需要OLTP140再進(jìn)行任何進(jìn)一步的處理。
應(yīng)該理解的是差異是指一條記錄或全部記錄中的一個(gè)或多個(gè)數(shù)據(jù)值的不同。
相應(yīng)的,OLTP140比較(1000)本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)210中的相應(yīng)記錄。OLTP140生成(1005)一個(gè)異常信號(hào),描述位于遠(yuǎn)程數(shù)據(jù)庫(kù)219中的記錄以及位于本地?cái)?shù)據(jù)庫(kù)200中的記錄的差異,其中對(duì)于每個(gè)差異生成一個(gè)異常信號(hào)。OLTP140把異常信號(hào)標(biāo)識(shí)符與每個(gè)異常信號(hào)相關(guān)聯(lián),其中異常信號(hào)標(biāo)識(shí)符是與記錄的標(biāo)識(shí)符關(guān)聯(lián)的。形成一個(gè)異常信號(hào)列表,包括異常信號(hào)的種類(lèi),以及歸類(lèi)于其中的異常信號(hào)標(biāo)識(shí)符。在一種實(shí)施方式中,如果異常信號(hào)屬于第一種異常信號(hào)類(lèi)型,那么這個(gè)異常信號(hào)被指定是“列表1”異常信號(hào)(或差異),屬于第二種異常信號(hào)類(lèi)型則指定是“列表2”異常信號(hào)。圖11所示是異常情況列表1140舉例說(shuō)明。
應(yīng)當(dāng)理解的是存在于異常信號(hào)列表中的異常信號(hào)標(biāo)識(shí)符并不意味著發(fā)送文件300和初始發(fā)送文件310不好,因?yàn)?,所有三種異常信號(hào)都是因?yàn)楸镜財(cái)?shù)據(jù)庫(kù)200的變化與應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210的更新之間的時(shí)延而合理的生成的。例如可能由網(wǎng)絡(luò)擁堵導(dǎo)致的時(shí)延。因此上述驗(yàn)證過(guò)程還提供一種從錯(cuò)誤數(shù)據(jù)中除去合理數(shù)據(jù)的機(jī)制。
對(duì)于初始發(fā)送文件310,OLTP140通過(guò)在數(shù)據(jù)庫(kù)200和210中執(zhí)行二維全部列表掃描,來(lái)比較本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)210。即,本地?cái)?shù)據(jù)庫(kù)200中的所有的數(shù)據(jù)將和遠(yuǎn)程數(shù)據(jù)庫(kù)210中的所有數(shù)據(jù)進(jìn)行比較。然后,遠(yuǎn)程數(shù)據(jù)庫(kù)210中的所有的數(shù)據(jù)將和本地?cái)?shù)據(jù)庫(kù)200中的所有數(shù)據(jù)進(jìn)行比較。這樣更便于提供數(shù)據(jù)庫(kù)200和210之間的無(wú)遺漏的比較從而發(fā)現(xiàn)所有的差異。
對(duì)于發(fā)送文件300,OLTP140只需比較本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)210中的數(shù)據(jù)記錄。這樣更便于提供一種發(fā)現(xiàn)目標(biāo)之間差異的快速請(qǐng)求。
等同的,可進(jìn)行對(duì)初始發(fā)送文件310和發(fā)送文件300的隨機(jī)取樣。然后OLTP140比較本地?cái)?shù)據(jù)庫(kù)200和遠(yuǎn)程數(shù)據(jù)庫(kù)210中的隨機(jī)取樣數(shù)據(jù)。
異常信號(hào)列表1140可對(duì)應(yīng)于錯(cuò)誤的事件,例如,對(duì)本地?cái)?shù)據(jù)庫(kù)200進(jìn)行的與遠(yuǎn)程數(shù)據(jù)庫(kù)210不一致的的添加(add),修改(mod),和刪除(del)。所以,為了識(shí)別這些候選事件,OLTP140檢查最近向本地?cái)?shù)據(jù)庫(kù)200提交的事務(wù)處理。通常,對(duì)應(yīng)于每個(gè)所提交的事務(wù)處理,在本地?cái)?shù)據(jù)庫(kù)200所存儲(chǔ)的列表中產(chǎn)生一條目錄。這條目錄包括改變的記錄的標(biāo)識(shí)符,改變的記錄的事務(wù)處理(或事件)(例如一個(gè)添加,修改,和/或刪除事件),以及一個(gè)存儲(chǔ)順序號(hào)用于指示事務(wù)處理的順序,等等。
一個(gè)對(duì)應(yīng)列表1100如圖11所示。在這個(gè)例子中,發(fā)送文件300如列表1100所示,包括事務(wù)處理1108-1114。第一目錄1101指示在第一個(gè)事務(wù)處理1108中,數(shù)據(jù)(域名服務(wù))n1和n2添加到了與標(biāo)識(shí)符d1相關(guān)的數(shù)據(jù)(域)中。因此,標(biāo)識(shí)符是d1,事件是“添加”,存儲(chǔ)順序號(hào)是11526。類(lèi)似的,第二目錄1102指示在第二項(xiàng)事務(wù)處理1109中,數(shù)據(jù)n8和n9添加到了與標(biāo)識(shí)符d2相關(guān)的數(shù)據(jù)中。第三目錄1103指示在第三項(xiàng)事務(wù)處理1110中,與標(biāo)識(shí)符d3相關(guān)的數(shù)據(jù)被刪除。第四目錄指示在第四項(xiàng)事務(wù)處理1111中,與標(biāo)識(shí)符d1相關(guān)的數(shù)據(jù)被修改并且添加了數(shù)據(jù)n5。第五個(gè)目錄1105指示在第五項(xiàng)事務(wù)處理1112中,數(shù)據(jù)n6和n7添加到與標(biāo)識(shí)符d3相關(guān)的數(shù)據(jù)中。第六個(gè)目錄1106指示在第六項(xiàng)事務(wù)處理1113中,與標(biāo)識(shí)符d4相關(guān)的數(shù)據(jù)被修改并刪除了數(shù)據(jù)n3。第R個(gè)目錄指示在第R項(xiàng)事務(wù)處理1114中,與標(biāo)識(shí)符d5相關(guān)的數(shù)據(jù)被刪除。
相應(yīng)的,如圖10A所示,OLTP140把一個(gè)事件標(biāo)識(shí)符和更新中的每個(gè)事件相關(guān)聯(lián)(1015),其中事件標(biāo)識(shí)符是與記錄的標(biāo)識(shí)符相關(guān)聯(lián)的。更新中的每個(gè)事件都能從事件記載表中找到。一個(gè)根據(jù)事件標(biāo)識(shí)符索引化及排序的事件記載表,可從對(duì)應(yīng)列表1100產(chǎn)生。一個(gè)事件記載表1120的例子如圖11所示。在這,對(duì)應(yīng)列表1100中的第一和第四目錄1101,1104指示與標(biāo)識(shí)符d1關(guān)聯(lián)的數(shù)據(jù)的改變。因此,事件記載表1120包括標(biāo)識(shí)符d1 1121和兩個(gè)事件1126,對(duì)與標(biāo)識(shí)符d1關(guān)聯(lián)的數(shù)據(jù)的改變,先是“添加”然后是“修改”。第二目錄1102指示對(duì)與標(biāo)識(shí)符d2對(duì)應(yīng)的數(shù)據(jù)的改變。因此,事件記載表1120包括標(biāo)識(shí)符d2 1122和一個(gè)“添加”事件1127。事件記載表1120包括標(biāo)識(shí)符d3 1123和兩個(gè)事件1128,先是“刪除”然后是“修改”,由包括對(duì)與標(biāo)識(shí)符d3關(guān)聯(lián)的第三和第五目錄1103,1105指示。第六目錄1106指示對(duì)與標(biāo)識(shí)符d4關(guān)聯(lián)的數(shù)據(jù)的改變。相應(yīng)的,事件記載表包括標(biāo)識(shí)符d4 1124和一個(gè)“修改”事件1129。第R個(gè)目錄1107指示與標(biāo)識(shí)符d5關(guān)聯(lián)的數(shù)據(jù)的改變,事件記載表1120包括標(biāo)識(shí)符d5 1125和一個(gè)“刪除”事件1130。標(biāo)識(shí)符1121-1125按照d1-d5的順序排列。
回到圖10A,OLTP140確定(1020)更新是否有效。這個(gè)確定可如下所述執(zhí)行,例如,根據(jù)圖10B所示的實(shí)施方式,首先OLTP140比較(1022)事件標(biāo)識(shí)符1121-1125和異常信號(hào)標(biāo)識(shí)符1140來(lái)確定哪些標(biāo)識(shí)符是對(duì)應(yīng)的。例如,在圖11中,事件記載表1120中的d1事件標(biāo)識(shí)符1121對(duì)應(yīng)于異常信號(hào)列表1140的“列表2”中的異常信號(hào)標(biāo)識(shí)符。在找到對(duì)應(yīng)的事件和異常信號(hào)之后,OLTP140確定(1024)事件是否判斷了這個(gè)異常信號(hào)。這個(gè)判斷可如下所述執(zhí)行。對(duì)于事件記載表1120中的每個(gè)事件標(biāo)識(shí)符1121-1125,OLTP140確定事件記載表1120中的每個(gè)事件1126-1130的順序是否有效??扇缦逻M(jìn)行,例如通過(guò)檢查異常情況列表1140來(lái)確定每個(gè)異常情況標(biāo)識(shí)符應(yīng)屬于哪種異常類(lèi)型,確定對(duì)于此種異常情況什么順序才是一個(gè)事件的有效順序,然后搜索事件記載表1120中相應(yīng)的事件標(biāo)識(shí)符類(lèi)型以及事件標(biāo)識(shí)符順序。每個(gè)異常類(lèi)型的有效順序?qū)⒃谙挛倪M(jìn)行更詳細(xì)的描述。如果事件記載表1120中事件的一個(gè)順序1126-1130與有效的順序相匹配,那么對(duì)應(yīng)的事件標(biāo)識(shí)符1121-1125就是一個(gè)有效的順序。因此,與異常情況標(biāo)識(shí)符關(guān)聯(lián)的異常信號(hào)將被判斷。并且,包括這些事件標(biāo)識(shí)符的相應(yīng)的事務(wù)處理1108-1114也是合法且沒(méi)有錯(cuò)誤的。這種情況下,OLTP140可從1140中除去這些異常情況標(biāo)識(shí)符。
“列表1”異常情況類(lèi)型的有效順序是(修改)*(刪除)。這個(gè)順序可以包括一個(gè)先是大于等于零個(gè)“修改”事件,然后一個(gè)“刪除”事件然后是任何事件的順序?!傲斜?”異常情況類(lèi)型可以是對(duì)應(yīng)于存在于遠(yuǎn)程數(shù)據(jù)庫(kù)210中的數(shù)據(jù),而不是本地?cái)?shù)據(jù)庫(kù)200中的數(shù)據(jù)。在下述情況,數(shù)據(jù)最近才從本地?cái)?shù)據(jù)庫(kù)200中刪除,這項(xiàng)事務(wù)處理還沒(méi)有寫(xiě)入到發(fā)送文件300。因此,發(fā)送文件300還沒(méi)有應(yīng)用到遠(yuǎn)程數(shù)據(jù)庫(kù)210。所以數(shù)據(jù)依然存在于遠(yuǎn)程數(shù)據(jù)庫(kù)210中。這可認(rèn)為是一個(gè)合理的差異,因?yàn)樵谶@個(gè)時(shí)刻要生成發(fā)送文件300并且應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。因此,如果在事件記載表1120中的異常情況列表1140的列表1的異常情況標(biāo)識(shí)符中找到一個(gè)這樣的順序1126-1130,相應(yīng)的事務(wù)處理可被認(rèn)為是有效的。
例如在圖11中,d5標(biāo)識(shí)符1125與其關(guān)聯(lián)的數(shù)據(jù)從本地?cái)?shù)據(jù)庫(kù)200中刪除,對(duì)應(yīng)列表1100中所示,以及在事件記載表110中索引化的第R個(gè)目錄1114。在驗(yàn)證時(shí),d5被從本地?cái)?shù)據(jù)庫(kù)200中刪除,但是沒(méi)有從遠(yuǎn)程數(shù)據(jù)庫(kù)210中刪除。因此,異常情況列表11140中包括標(biāo)識(shí)符d5。根據(jù)事件記載表1120,與d5標(biāo)識(shí)符1125關(guān)聯(lián)的事件1130是“刪除”,OLTP140比較“列表1”異常情況種類(lèi)的有效順序,即(修改)*(刪除),與事件記載表1120中的d5事件1130。因?yàn)椤傲斜?”的有效順序和事件1130匹配,與標(biāo)識(shí)符d5關(guān)聯(lián)的刪除事務(wù)處理1114被認(rèn)為合理且沒(méi)有錯(cuò)誤。相應(yīng)的,標(biāo)識(shí)符d5從異常情況列表中除去。
“列表2”的事件的有效順序是(添加)。這個(gè)順序可包括一個(gè)“添加”操組,然后是任何操作?!傲斜?”異常情況類(lèi)型可對(duì)應(yīng)于存在于本地?cái)?shù)據(jù)庫(kù)200中的數(shù)據(jù),而不是遠(yuǎn)程數(shù)據(jù)庫(kù)210的數(shù)據(jù)。這種情況下,數(shù)據(jù)最近被添加到本地?cái)?shù)據(jù)庫(kù)200的事務(wù)處理還沒(méi)有寫(xiě)入發(fā)送文件300。因此,發(fā)送文件300還沒(méi)有應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。這也可認(rèn)為是合理的差異因?yàn)樵谶@個(gè)時(shí)刻要生成發(fā)送文件300并且應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。相應(yīng)的,如果在事件記載表1120中的異常情況列表1140的列表2的異常情況標(biāo)識(shí)符找到一個(gè)這樣的順序1126-1130,相應(yīng)的事務(wù)處理可被認(rèn)為是有效的。
回到圖11,d1和d2標(biāo)識(shí)符1121,1123與最初添加到本地?cái)?shù)據(jù)庫(kù)200中的數(shù)據(jù)相關(guān)聯(lián),例如因?yàn)樗鼈兊氖录樞?126,1127以一個(gè)“添加”事件開(kāi)始,d1和d2標(biāo)識(shí)符1121,1123與“列表2”的異常情況類(lèi)型的有效順序匹配。相應(yīng)的包括這些標(biāo)識(shí)符的事務(wù)處理1108,1109可被認(rèn)為是有效的,標(biāo)識(shí)符d1和d2從異常情況列表1140中刪除。應(yīng)當(dāng)注意的是d3標(biāo)識(shí)符1123在其順序1128中也包括一個(gè)“添加”事件。但是,這個(gè)“添加”操作不是順序1128中的第一事件。相應(yīng)的,順序1128不滿(mǎn)足“列表2”的種類(lèi)。另外,因?yàn)閐3不在異常情況1140的列表2中,OLTP140將不為列表2的有效順序檢查它。
“列表3”異常情況類(lèi)型的事件的有效順序是(刪除)(添加)或者(修改)。這個(gè)順序是“刪除”事件,其次“添加”事件,其次任何事件或“修改”事件,然后是任何事件?!傲斜?”異常情況類(lèi)型對(duì)應(yīng)于存在于兩個(gè)數(shù)據(jù)庫(kù)200,210中的不同的數(shù)據(jù)。這種情況下,本地?cái)?shù)據(jù)庫(kù)200的數(shù)據(jù)最近被修改,這項(xiàng)事務(wù)處理沒(méi)有寫(xiě)入發(fā)送文件300中。因此,發(fā)送文件300還沒(méi)有應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。所以,遠(yuǎn)程數(shù)據(jù)庫(kù)210中與標(biāo)識(shí)符關(guān)聯(lián)的數(shù)據(jù)還沒(méi)有修改。同樣的,這也可被認(rèn)為是合理的差異,因?yàn)樵谙嗤臅r(shí)刻,發(fā)送文件300生成并應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。相應(yīng)的,如果在事件記載表1120中的異常情況列表1140的列表2的異常情況標(biāo)識(shí)符1126-1130找到一個(gè)這樣的順序,相應(yīng)的事務(wù)處理可被認(rèn)為是有效的。
例如在圖11中,d3和d4標(biāo)識(shí)符1123,1124與在本地?cái)?shù)據(jù)庫(kù)200中修改的數(shù)據(jù)關(guān)聯(lián)。在d3標(biāo)識(shí)符1123,d3標(biāo)識(shí)符1123以及其數(shù)據(jù)最初被刪除,并且添加了新的數(shù)據(jù)的的情況下,事件順序1128包括“刪除”隨后是“添加”。在d4標(biāo)識(shí)符1124,d4的資料被修改來(lái)除去一些數(shù)據(jù),事件順序1129包括“修改”。因?yàn)檫@些事件順序1128,1129與“列表3”異常情況列表的有效順序?qū)?yīng),它們的相應(yīng)事務(wù)處理1110,1112,1113被認(rèn)為是有效的,d3和d4標(biāo)識(shí)符從異常情況列表1140中刪除。
關(guān)于圖10B,如果在異常情況列表1140中的由它們的標(biāo)識(shí)符指示的所有的異常情況已經(jīng)被事件判斷(1024),即如果異常情況列表1140是空的,OLTP140指定(1026)發(fā)送文件或初始發(fā)送文件310有效,并通知LUE應(yīng)用發(fā)送文件300或初始發(fā)送文件310于遠(yuǎn)程數(shù)據(jù)庫(kù)210。然后LUE100應(yīng)用發(fā)送文件300或初始發(fā)送文件310于遠(yuǎn)程數(shù)據(jù)庫(kù)210。
相反的,如果所有的異常情況沒(méi)有被事件所判斷(1024),即如果異常情況列表1140不是空的,那么余下的異常情況在發(fā)送文件300或初始發(fā)送文件310中指示錯(cuò)誤。相應(yīng)的,OLTP140指定(1028)發(fā)送文件或初始發(fā)送文件是無(wú)效的,并把錯(cuò)誤信息存入錯(cuò)誤文檔。
在一種等同的實(shí)施方式中,例如,如果發(fā)送文件300或初始發(fā)送文件310被指定為無(wú)效,在一段預(yù)定的時(shí)間內(nèi),OLTP140重復(fù)驗(yàn)證無(wú)效的發(fā)送文件300或初始發(fā)送文件310,來(lái)保證差異的確是錯(cuò)誤的。這個(gè)預(yù)定的時(shí)延允許網(wǎng)絡(luò)有更多的時(shí)間來(lái)傳送一些延遲的發(fā)送文件300,以及允許數(shù)據(jù)庫(kù)200,210有更多的時(shí)間來(lái)形成讀出一致。
在根據(jù)本發(fā)明的一種實(shí)施方式中,遠(yuǎn)程數(shù)據(jù)庫(kù)210的數(shù)據(jù)“滯后”本地?cái)?shù)據(jù)庫(kù)200的數(shù)據(jù)一段很明顯的時(shí)間間隔。相應(yīng)的,為了比較數(shù)據(jù)庫(kù)200,210并檢測(cè)出錯(cuò)誤,使數(shù)據(jù)庫(kù)200,210在同一時(shí)刻變?yōu)樽x出一致即它們是互相的精確的復(fù)制件,通常遠(yuǎn)程數(shù)據(jù)庫(kù)210可運(yùn)行于本地?cái)?shù)據(jù)庫(kù)200之前,這樣遠(yuǎn)程數(shù)據(jù)庫(kù)210中的數(shù)據(jù)就能與本地?cái)?shù)據(jù)庫(kù)中的內(nèi)容相同。
相應(yīng)的,為了加快驗(yàn)證過(guò)程,任何當(dāng)前生成的初始發(fā)送文件310和依次生成的發(fā)送文件300可在確認(rèn)有效之前應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)210。因此差異的數(shù)目就可明顯減少。這個(gè)把發(fā)送文件300,310分批的過(guò)程可稱(chēng)為打包。信息包中的發(fā)送文件300,310的第一個(gè)和最后一個(gè)可分別稱(chēng)為低位和高位水印。第一個(gè)信息包,包括初始發(fā)送文件310,稱(chēng)為起始信息包。接下來(lái)的所有信息包,稱(chēng)為末端信息包,只包括發(fā)送文件300。
打包提供一種成組驗(yàn)證而可以不用單獨(dú)進(jìn)行驗(yàn)證。相應(yīng)的,如果在一個(gè)信息包中檢測(cè)到一個(gè)錯(cuò)誤,整個(gè)信息包將被認(rèn)為是無(wú)效的,而不僅是發(fā)生錯(cuò)誤的發(fā)送文件300或初始發(fā)送文件310。
根據(jù)本發(fā)明實(shí)施例的結(jié)構(gòu)和方法可用一種常規(guī)目的的根據(jù)本發(fā)明實(shí)施例所指教的程序化微處理器來(lái)實(shí)施。根據(jù)本發(fā)明的實(shí)施方式還包括一個(gè)機(jī)器可讀存媒體,包括用于對(duì)處理器進(jìn)行程序化,來(lái)執(zhí)行根據(jù)本發(fā)明實(shí)施例所述的方法的指令。這種媒體包括而不是僅限定于,任何種類(lèi)的磁盤(pán),包括軟盤(pán),光盤(pán)和CD-ROM。
一些本發(fā)明的實(shí)施方式在此舉例說(shuō)明并描述了。但是,應(yīng)當(dāng)理解的是在不脫離本發(fā)明的精神和范圍的情況下,任何修改和變更都被上述示例所覆蓋并且在權(quán)利要求書(shū)的范圍內(nèi)。
權(quán)利要求
1.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,由下列步驟構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)將一定數(shù)量的定期更新發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù);以及在生成一定數(shù)量定期更新的同時(shí),生成一個(gè)初始更新,包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本,基于一個(gè)起始時(shí)刻,確定一定數(shù)量的定期更新中的最后的一個(gè)定期更新,基于所述起始時(shí)刻,確定一個(gè)最后的事務(wù)處理,以及通過(guò)網(wǎng)絡(luò),將所述初始更新,最后的一個(gè)定期更新標(biāo)識(shí)符,以及最后的一個(gè)事務(wù)處理標(biāo)識(shí)符發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù)。
2.如權(quán)利要求1所述的方法,其中發(fā)送所述初始更新包括將最后的定期更新標(biāo)識(shí)符與最后的定期更新相關(guān)聯(lián);以及將最后的事務(wù)處理標(biāo)識(shí)符與最后的事務(wù)處理相關(guān)聯(lián)。
3.如權(quán)利要求1所述的方法,其中一定數(shù)量的定期更新按規(guī)則或不規(guī)則的時(shí)間間隔來(lái)生成。
4.如權(quán)利要求1所述的方法,其中初始更新生成的起始時(shí)刻與定期更新生成的起始時(shí)刻相同。
5.如權(quán)利要求1所述的方法,其中初始更新生成的起始時(shí)刻在定期更新生成的起始時(shí)刻之后。
6.如權(quán)利要求1所述的方法,其中一個(gè)定期更新包括一定數(shù)量的事務(wù)處理,其中每一個(gè)事務(wù)處理具有一個(gè)唯一的事務(wù)處理標(biāo)識(shí)符。
7.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,由下列步驟構(gòu)成通過(guò)網(wǎng)絡(luò)接收基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)接收一個(gè)初始更新,其包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本;從所述初始更新中讀取最后定期更新標(biāo)識(shí)符;從所述初始更新中讀取最后的一個(gè)事務(wù)處理標(biāo)識(shí)符;從最后的定期更新標(biāo)識(shí)符確定最后的一個(gè)定期更新,所述確定最后的定期更新是基于起始時(shí)刻進(jìn)行的;從最后的事務(wù)處理標(biāo)識(shí)符中確定最后的一個(gè)事務(wù)處理,所述確定最后的事務(wù)處理是基于起始時(shí)刻進(jìn)行的;將在最后的事務(wù)處理之后生成的事務(wù)處理應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù);以及將在最后的定期更新之后生成的定期更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)。
8.如權(quán)利要求7所述的方法,進(jìn)一步包括丟棄在初始更新的起始時(shí)刻之前生成的定期更新。
9.如權(quán)利要求7所述的方法,其中一定數(shù)量的定期更新是按周期性的時(shí)間間隔接收。
10.如權(quán)利要求7所述的方法,其中一定數(shù)量的定期更新是按周期性的時(shí)間間隔成批接收。
11.如權(quán)利要求7所述的方法,其中的定期更新包括一定數(shù)量的事務(wù)處理,其中每一個(gè)事務(wù)處理具有一個(gè)唯一的事務(wù)處理標(biāo)識(shí)符。
12.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,由下列步驟構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;生成一個(gè)包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本的初始更新,一個(gè)與起始時(shí)刻之前最后生成的定期更新相關(guān)聯(lián)的更新標(biāo)識(shí)符,以及一個(gè)與起始時(shí)刻之前最后提交的事務(wù)處理相關(guān)聯(lián)的事務(wù)處理標(biāo)識(shí)符。
13.如權(quán)利要求12所述的方法,其中一定數(shù)量的定期更新按規(guī)則的時(shí)間間隔來(lái)生成。
14.如權(quán)利要求12所述的方法,其中一定數(shù)量的定期更新按不規(guī)則的時(shí)間間隔來(lái)生成。
15.如權(quán)利要求12所述的方法,其中初始更新生成的起始時(shí)刻與定期更新生成的起始時(shí)刻相同。
16.如權(quán)利要求12所述的方法,其中初始更新的起始時(shí)刻在定期更新生成的起始時(shí)刻之后。
17.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的系統(tǒng),由下列構(gòu)成至少一個(gè)與網(wǎng)絡(luò)連接的處理器;以及一個(gè)與處理器連接的存儲(chǔ)器,所述存儲(chǔ)器包括一個(gè)本地?cái)?shù)據(jù)庫(kù)和所編寫(xiě)的指令,由處理器執(zhí)行來(lái)用于完成一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,該方法由下列步驟構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)將一定數(shù)量的定期更新發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù);以及在生成一定數(shù)量定期更新的同時(shí),生成一個(gè)初始更新,包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本,基于一個(gè)起始時(shí)刻,確定一定數(shù)量的定期更新中的最后的一個(gè)定期更新,基于所述起始時(shí)刻,確定一個(gè)最后的事務(wù)處理,以及通過(guò)網(wǎng)絡(luò),將所述初始更新,最后的一個(gè)定期更新標(biāo)識(shí)符,以及最后的一個(gè)事務(wù)處理標(biāo)識(shí)符發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù)。
18.如權(quán)利要求17所述的系統(tǒng),其中發(fā)送所述初始更新包括將最后的定期更新標(biāo)識(shí)符與最后的定期更新相關(guān)聯(lián);以及將最后的事務(wù)處理標(biāo)識(shí)符與最后的事務(wù)處理相關(guān)聯(lián)。
19.如權(quán)利要求17所述的系統(tǒng),其中一定數(shù)量的定期更新按規(guī)則或不規(guī)則的時(shí)間間隔來(lái)生成。
20.如權(quán)利要求17所述的系統(tǒng),其中初始更新生成的起始時(shí)刻與定期更新生成的起始時(shí)刻相同。
21.如權(quán)利要求17所述的系統(tǒng),其中初始更新生成的起始時(shí)刻在定期更新生成的起始時(shí)刻之后。
22.如權(quán)利要求17所述的系統(tǒng),其中一個(gè)定期更新包括一定數(shù)量的事務(wù)處理,其中每一個(gè)事務(wù)處理具有一個(gè)唯一的事務(wù)處理標(biāo)識(shí)符。
23.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的系統(tǒng),由下列構(gòu)成至少一個(gè)與網(wǎng)絡(luò)連接的處理器;以及一個(gè)與處理器連接的存儲(chǔ)器,所述存儲(chǔ)器包括一個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù)和所編寫(xiě)的指令,由處理器執(zhí)行來(lái)用于完成一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,該方法由下列步驟構(gòu)成通過(guò)網(wǎng)絡(luò)接收基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)接收一個(gè)初始更新,其包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本,從所述初始更新中讀取最后定期更新標(biāo)識(shí)符;從所述初始更新中讀取最后的一個(gè)事務(wù)處理標(biāo)識(shí)符,從最后的定期更新標(biāo)識(shí)符確定最后的一個(gè)定期更新,所述確定最后的定期更新是基于起始時(shí)刻進(jìn)行的,從最后的事務(wù)處理標(biāo)識(shí)符中確定最后的一個(gè)事務(wù)處理,所述確定最后的事務(wù)處理是基于起始時(shí)刻進(jìn)行的,將在最后事務(wù)處理之后生成的事物應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù),以及將在最后定期更新之后生成的定期更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)。
24.如權(quán)利要求23所述的系統(tǒng),進(jìn)一步包括丟棄在初始更新的起始時(shí)刻之前生成的定期更新。
25.如權(quán)利要求23所述的系統(tǒng),其中一定數(shù)量的定期更新是按固定的時(shí)間間隔接收。
26.如權(quán)利要求23所述的系統(tǒng),其中的一定數(shù)量定期更新是按固定的時(shí)間間隔成批接收。
27.如權(quán)利要求23所述的系統(tǒng),其中的定期更新包括一定數(shù)量的事務(wù)處理,其中每一個(gè)事務(wù)處理具有一個(gè)唯一的事務(wù)處理標(biāo)識(shí)符。
28.一種機(jī)器可讀媒體,包括編寫(xiě)的程序指令,由處理器執(zhí)行來(lái)用于完成一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,該方法由下列步驟構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)將一定數(shù)量的定期更新發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù);以及在生成一定數(shù)量定期更新的同時(shí),生成一個(gè)初始更新,包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本,基于一個(gè)起始時(shí)刻,確定一定數(shù)量的定期更新中的最后的一個(gè)定期更新,基于所述起始時(shí)刻,確定一個(gè)最后的事務(wù)處理,將最后的定期更新標(biāo)識(shí)符與最后的定期更新相關(guān)聯(lián),將最后的事務(wù)處理標(biāo)識(shí)符與最后的事務(wù)處理相關(guān)聯(lián),以及通過(guò)網(wǎng)絡(luò),將所述初始更新,最后的一個(gè)定期更新標(biāo)識(shí)符,以及最后的一個(gè)事務(wù)處理標(biāo)識(shí)符發(fā)送到遠(yuǎn)程數(shù)據(jù)庫(kù)。
29.一種機(jī)器可讀媒體,包括編寫(xiě)的程序指令,由處理器執(zhí)行來(lái)用于完成一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,該方法由下列步驟構(gòu)成通過(guò)網(wǎng)絡(luò)接收基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量定期更新,其中每一個(gè)定期更新包括至少一個(gè)事務(wù)處理;通過(guò)網(wǎng)絡(luò)接收一個(gè)初始更新,其包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本;從所述初始更新中讀取最后的一個(gè)定期更新從所述初始更新中讀取最后的一個(gè)事務(wù)處理標(biāo)識(shí)符;從最后的定期更新標(biāo)識(shí)符確定最后的一個(gè)定期更新,所述確定最后的定期更新是基于起始時(shí)刻進(jìn)行的,從最后的事務(wù)處理標(biāo)識(shí)符中確定最后的一個(gè)事務(wù)處理,所述確定最后的事務(wù)處理是基于起始時(shí)刻進(jìn)行的,將在最后事務(wù)處理之后生成的事物應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù),以及將在最后定期更新之后生成的定期更新應(yīng)用于遠(yuǎn)程數(shù)據(jù)庫(kù)。
30.一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)的方法,由下列步驟構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每個(gè)定期更新包括至少一個(gè)事務(wù)處理;生成一個(gè)初始更新,其包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本;以及將初始更新與定期更新相關(guān)聯(lián),將更新標(biāo)識(shí)符與在起始時(shí)刻之前生成的最后定期更新相關(guān)聯(lián),以及將事務(wù)處理標(biāo)識(shí)符與在起始時(shí)刻之前提交的最后事務(wù)處理相關(guān)聯(lián)。
31.如權(quán)利要求30所述的方法,其中的定期更新包括對(duì)一個(gè)域名服務(wù)器的更新。
32.如權(quán)利要求30所述的方法,其中的更新標(biāo)識(shí)符與對(duì)域名服務(wù)器的最后更新相關(guān)聯(lián)。
33.如權(quán)利要求30所述的方法,其中的事務(wù)處理標(biāo)識(shí)符與向域名服務(wù)器最后提交的事務(wù)處理相關(guān)聯(lián)。
34.一種更新生成器,由下列構(gòu)成基于本地?cái)?shù)據(jù)庫(kù)所增加的變化生成一定數(shù)量的定期更新,其中每個(gè)定期更新包括至少一個(gè)事務(wù)處理的裝置;以及生成一個(gè)包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本的初始更新,將更新標(biāo)識(shí)符與在起始時(shí)刻之前生成的最后定期更新相關(guān)聯(lián),以及將事務(wù)處理標(biāo)識(shí)符與在起始時(shí)刻之前提交的最后事務(wù)處理相關(guān)聯(lián)的裝置。
全文摘要
一種通過(guò)網(wǎng)絡(luò)更新遠(yuǎn)程數(shù)據(jù)庫(kù)(210)的方法和系統(tǒng)?;诒镜?cái)?shù)據(jù)庫(kù)(200)所增加的變化,生成一定數(shù)量的的定期更新,稱(chēng)為發(fā)送文件(300-F)。每個(gè)定期更新包括至少一個(gè)事務(wù)處理。生成一個(gè)初始更新,包括本地?cái)?shù)據(jù)庫(kù)在起始時(shí)刻的版本,稱(chēng)為初始發(fā)送文件。另外,生成一個(gè)與起始時(shí)刻之前最后的周期更新相關(guān)聯(lián)的標(biāo)識(shí)符,以及一個(gè)與起始時(shí)刻之前最后所提交的事務(wù)處理相關(guān)聯(lián)的標(biāo)識(shí)符。
文檔編號(hào)G06FGK1610902SQ02826620
公開(kāi)日2005年4月27日 申請(qǐng)日期2002年11月1日 優(yōu)先權(quán)日2001年11月1日
發(fā)明者A·N·巴洛, W·F·小哈沃斯, B·T·麥克米倫 申請(qǐng)人:弗里塞恩公司