本發(fā)明涉及分布式數(shù)據(jù)存儲領(lǐng)域,具體來說,涉及一種分布式數(shù)據(jù)庫的事務(wù)處理方法和系統(tǒng)。
背景技術(shù):
:無共享(shared-nothing)結(jié)構(gòu)的數(shù)據(jù)庫集群因其較好的系統(tǒng)擴展性和較高的并行查詢處理性能,而成為目前大規(guī)模數(shù)據(jù)庫系統(tǒng)的主流系統(tǒng)結(jié)構(gòu),如:IBMDB2的UDB、MysqlCluster和EMC的GreenPlum均采用無共享的結(jié)構(gòu)。在采用數(shù)據(jù)無共享結(jié)構(gòu)的數(shù)據(jù)庫集群中,數(shù)據(jù)可以分為兩類,一類是大表數(shù)據(jù),通常采用某種劃分策略分布到多個數(shù)據(jù)庫節(jié)點;另一類是小表數(shù)據(jù),表示大表的一些定義和規(guī)則等信息,因經(jīng)常與大表進行關(guān)聯(lián)查詢,因此采用全復(fù)制的方式,分布在所有相關(guān)的數(shù)據(jù)庫節(jié)點上。全復(fù)制的數(shù)據(jù)表,在進行數(shù)據(jù)讀取時,只需要選擇任何一個數(shù)據(jù)庫節(jié)點進行即可,但是在進行DML操作(insert,update和delete)時,必須在所有的數(shù)據(jù)庫節(jié)點上進行修改,以保證所有數(shù)據(jù)庫節(jié)點數(shù)據(jù)的一致性。目前,現(xiàn)有的數(shù)據(jù)庫事務(wù)處理機制在對這些全復(fù)制數(shù)據(jù)進行修改時,是分別在單個數(shù)據(jù)庫節(jié)點上進行數(shù)據(jù)修改的,這種處理方式不僅控制機制比較復(fù)雜,而且還無法保證各個數(shù)據(jù)庫節(jié)點之間的同步性,從而無法保證所有數(shù)據(jù)庫節(jié)點數(shù)據(jù)的一致性。針對相關(guān)技術(shù)中無法保證所有數(shù)據(jù)庫節(jié)點數(shù)據(jù)的一致性問題,目前尚未提出有效的解決方案。技術(shù)實現(xiàn)要素:針對相關(guān)技術(shù)中無法保證所有數(shù)據(jù)庫節(jié)點數(shù)據(jù)的一致性問題,本發(fā)明提出一種分布式數(shù)據(jù)庫的事務(wù)處理方法和系統(tǒng),其采用了數(shù)據(jù)庫鏈路的方式,保證了多副本數(shù)據(jù)的一致性控制,并且,在保證多副本數(shù)據(jù)的一致性的基礎(chǔ)上,很好的解決了事務(wù)處理性能和節(jié)點故障處理的問題。本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:根據(jù)本發(fā)明的一個方面,提供了一種分布式數(shù)據(jù)庫的事務(wù)處理方法。該分布式數(shù)據(jù)庫的事務(wù)處理方法,包括:主數(shù)據(jù)庫接收根據(jù)配置請求生成的事務(wù);主數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作,并根據(jù)預(yù)先配置的主數(shù)據(jù)庫與從數(shù)據(jù)庫之間的數(shù)據(jù)庫鏈路,將事務(wù)傳輸至從數(shù)據(jù)庫。此外,分布式數(shù)據(jù)庫的事務(wù)處理方法進一步包括:預(yù)先在主數(shù)據(jù)庫和從數(shù)據(jù)庫之間配置數(shù)據(jù)庫鏈路。另外,分布式數(shù)據(jù)庫的事務(wù)處理方法還包括:從數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作。其中,在從數(shù)據(jù)庫執(zhí)行完成后,判斷從數(shù)據(jù)庫的執(zhí)行結(jié)果與主數(shù)據(jù)庫中的執(zhí)行結(jié)果是否一致;在判斷結(jié)果為否的情況下,刪除從數(shù)據(jù)庫中的執(zhí)行結(jié)果,并將主數(shù)據(jù)庫中的執(zhí)行結(jié)果同步到從數(shù)據(jù)庫中。其中,在從數(shù)據(jù)庫執(zhí)行與事務(wù)對應(yīng)操作的過程中,對于出現(xiàn)異常而無法執(zhí)行該操作的從數(shù)據(jù)庫進行標識,將標識后的該從數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)庫鏈路剔除,并允許其他從數(shù)據(jù)庫繼續(xù)執(zhí)行事務(wù)對應(yīng)的操作。其中,在該出現(xiàn)異常的從數(shù)據(jù)庫恢復(fù)正常后,將該從數(shù)據(jù)庫加入到數(shù)據(jù)庫鏈路中,并將主數(shù)據(jù)庫中執(zhí)行事務(wù)的操作的執(zhí)行結(jié)果同步到該從數(shù)據(jù)庫中。其中,配置請求至少包含一條對象修改請求。根據(jù)本發(fā)明的另一方面,提供了一種分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)。該分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)包括主數(shù)據(jù)庫和至少一個從數(shù)據(jù)庫,其中,主數(shù)據(jù)庫包括:接收模塊,用于接收根據(jù)配置請求生成的事務(wù);執(zhí)行模塊,用于執(zhí)行事務(wù)對應(yīng)的操作;傳輸模塊,用于根據(jù)預(yù)先配置的主數(shù)據(jù)庫與從數(shù)據(jù)庫之間的數(shù)據(jù)庫鏈路,將事務(wù)傳輸至從數(shù)據(jù)庫,以便從數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作。此外,分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)還包括配置管理服務(wù)器;配置管理服務(wù)器,用于接收配置請求,生成事務(wù)并將生成的事務(wù)發(fā)送至主數(shù)據(jù)庫。其中,配置管理服務(wù)器包括判斷模塊和結(jié)果處理模塊,判斷模塊,用于在從數(shù)據(jù)庫執(zhí)行完成后,判斷從數(shù)據(jù)庫的執(zhí)行結(jié)果與主數(shù)據(jù)庫中的執(zhí)行結(jié)果是否一致;結(jié)果處理模塊,用于在判斷結(jié)果為否的情況下,刪除從數(shù)據(jù)庫中的執(zhí)行結(jié)果,并將主數(shù)據(jù)庫中的執(zhí)行結(jié)果同步到從數(shù)據(jù)庫中。此外,配置管理服務(wù)器還用于在從數(shù)據(jù)庫執(zhí)行與事務(wù)對應(yīng)操作的過程中,對于出現(xiàn)異常而無法執(zhí)行該操作的從數(shù)據(jù)庫進行標識,將標識后的該從數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)庫鏈路剔除,并允許其他從數(shù)據(jù)庫繼續(xù)執(zhí)行事務(wù)對應(yīng)的操作。在該出現(xiàn)異常的從數(shù)據(jù)庫恢復(fù)正常后,將該從數(shù)據(jù)庫加入到數(shù)據(jù)庫鏈路中,并將主數(shù)據(jù)庫中執(zhí)行事務(wù)的操作的執(zhí)行結(jié)果同步到該從數(shù)據(jù)庫中。本發(fā)明通過在主數(shù)據(jù)庫與從數(shù)據(jù)庫之間配置數(shù)據(jù)庫鏈路,將原先對所有數(shù)據(jù)庫的處理轉(zhuǎn)換成對主數(shù)據(jù)庫進行處理,然后再由主數(shù)據(jù)庫與從數(shù)據(jù)庫之間進行通信處理,從而簡化了對所有數(shù)據(jù)庫的一致性控制,保證了所有數(shù)據(jù)庫之間的同步性,而且,在進行處理時,還能夠?qū)⒁唤M操作同時作為一個事務(wù)進行處理,從而大大的提高了處理時的靈活性和便捷性。附圖說明為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是根據(jù)本發(fā)明實施例的分布式數(shù)據(jù)庫的事務(wù)處理方法的流程圖;圖2是根據(jù)本發(fā)明實施例的分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)的主數(shù)據(jù)庫的結(jié)構(gòu)示意圖;圖3是根據(jù)本發(fā)明實施例的分布式數(shù)據(jù)庫的事務(wù)處理方法的實例的流程示意圖;圖4是根據(jù)本發(fā)明實施例的分布式數(shù)據(jù)庫的事務(wù)處理方法中數(shù)據(jù)庫鏈路的連接示意圖。具體實施方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。根據(jù)本發(fā)明的實施例,提供了一種分布式數(shù)據(jù)庫的事務(wù)處理方法。如圖1所示,根據(jù)本發(fā)明實施例的分布式數(shù)據(jù)庫的事務(wù)處理方法包括:步驟S101,主數(shù)據(jù)庫接收根據(jù)配置請求生成的事務(wù);步驟S103,主數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作,并根據(jù)預(yù)先配置的主數(shù)據(jù)庫與從數(shù)據(jù)庫之間的數(shù)據(jù)庫鏈路,將事務(wù)傳輸至從數(shù)據(jù)庫。此外,分布式數(shù)據(jù)庫的事務(wù)處理方法進一步包括:預(yù)先在主數(shù)據(jù)庫和從數(shù)據(jù)庫之間配置數(shù)據(jù)庫鏈路。另外,分布式數(shù)據(jù)庫的事務(wù)處理方法還包括:從數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作。其中,在從數(shù)據(jù)庫執(zhí)行完成后,判斷從數(shù)據(jù)庫的執(zhí)行結(jié)果與主數(shù)據(jù)庫中的執(zhí)行結(jié)果是否一致;在判斷結(jié)果為否的情況下,刪除從數(shù)據(jù)庫中的執(zhí)行結(jié)果,并將主數(shù)據(jù)庫中的執(zhí)行結(jié)果同步到從數(shù)據(jù)庫中。其中,在從數(shù)據(jù)庫執(zhí)行與事務(wù)對應(yīng)操作的過程中,對于出現(xiàn)異常而無法執(zhí)行該操作的從數(shù)據(jù)庫進行標識,將標識后的該從數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)庫鏈路剔除,并允許其他從數(shù)據(jù)庫繼續(xù)執(zhí)行事務(wù)對應(yīng)的操作。其中,在該出現(xiàn)異常的從數(shù)據(jù)庫恢復(fù)正常后,將該從數(shù)據(jù)庫加入到數(shù)據(jù)庫鏈路中,并將主數(shù)據(jù)庫中執(zhí)行事務(wù)的操作的執(zhí)行結(jié)果同步到該從數(shù)據(jù)庫中。其中,配置請求至少包含一條對象修改請求。根據(jù)本發(fā)明的實施例,還提供了一種分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)。如圖2所示,該分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)包括主數(shù)據(jù)庫(未示出)和至少一個從數(shù)據(jù)庫(未示出),其中,主數(shù)據(jù)庫包括:接收模塊21,用于接收根據(jù)配置請求生成的事務(wù);執(zhí)行模塊22,用于執(zhí)行事務(wù)對應(yīng)的操作;傳輸模塊23,用于根據(jù)預(yù)先配置的主數(shù)據(jù)庫與從數(shù)據(jù)庫之間的數(shù)據(jù)庫鏈路,將事務(wù)傳輸至從數(shù)據(jù)庫,以便從數(shù)據(jù)庫執(zhí)行事務(wù)對應(yīng)的操作。此外,分布式數(shù)據(jù)庫的事務(wù)處理系統(tǒng)還包括配置管理服務(wù)器(未示出);配置管理服務(wù)器,用于接收配置請求,生成事務(wù)并將生成的事務(wù)發(fā)送至主數(shù)據(jù)庫。其中,配置管理服務(wù)器包括判斷模塊和結(jié)果處理模塊,判斷模塊,用于在從數(shù)據(jù)庫執(zhí)行完成后,判斷從數(shù)據(jù)庫的執(zhí)行結(jié)果與主數(shù)據(jù)庫中的執(zhí)行結(jié)果是否一致;結(jié)果處理模塊,用于在判斷結(jié)果為否的情況下,刪除從數(shù)據(jù)庫中的執(zhí)行結(jié)果,并將主數(shù)據(jù)庫中的執(zhí)行結(jié)果同步到從數(shù)據(jù)庫中。此外,配置管理服務(wù)器還用于在從數(shù)據(jù)庫執(zhí)行與事務(wù)對應(yīng)操作的過程中,對于出現(xiàn)異常而無法執(zhí)行該操作的從數(shù)據(jù)庫進行標識,將標識后的該從數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)庫鏈路剔除,并允許其他從數(shù)據(jù)庫繼續(xù)執(zhí)行事務(wù)對應(yīng)的操作。在該出現(xiàn)異常的從數(shù)據(jù)庫恢復(fù)正常后,將該從數(shù)據(jù)庫加入到數(shù)據(jù)庫鏈路中,并將主數(shù)據(jù)庫中執(zhí)行事務(wù)的操作的執(zhí)行結(jié)果同步到該從數(shù)據(jù)庫中。以下通過實例與原理對本發(fā)明的上述技術(shù)方案進行說明。由于全復(fù)制數(shù)據(jù)表的特性,使得全復(fù)制數(shù)據(jù)表在進行DML操作時,必須在所有的數(shù)據(jù)庫節(jié)點上進行修改,保證所有數(shù)據(jù)庫節(jié)點數(shù)據(jù)的一致性。因此在對這些全復(fù)制數(shù)據(jù)進行修改時,需解決以下三個問題:(1)多個副本數(shù)據(jù)庫的一致性控制;(2)提供用戶自定義的事務(wù)處理,解決事務(wù)處理的性能,即將用戶的一組操作組合成一個事務(wù)的整體進行處理;(3)可靠性問題,包括節(jié)點故障的處理和恢復(fù)。如圖3所示,關(guān)于多個副本數(shù)據(jù)庫的一致性控制的問題,本發(fā)明將采用事務(wù)和中間件服務(wù)管理相結(jié)合的方法來解決,具體步驟如下:步驟1、配置管理服務(wù)器在負載均衡服務(wù)器上注冊;步驟2、負載均衡服務(wù)器接收配置請求;步驟3、負載均衡服務(wù)器將一個配置管理服務(wù)器綁定給配置請求方;步驟4、配置請求方將要修改的配置數(shù)據(jù)發(fā)送給配置管理服務(wù)器;步驟5、對配置請求進行分類,如果是配置查詢請求,則直接發(fā)送給中間件服務(wù)管理節(jié)點上的主數(shù)據(jù)庫(SMDB),在主數(shù)據(jù)上進行查詢,并將執(zhí)行的結(jié)果返回給配置管理服務(wù)器,由配置管理服務(wù)器將結(jié)果返回給用戶;如果是配置修改請求,則繼續(xù)下一步;步驟6、配置管理服務(wù)器根據(jù)配置請求以及中間件服務(wù)管理節(jié)點上發(fā)來的最新數(shù)據(jù)庫狀態(tài)信息構(gòu)造事務(wù),并將事務(wù)發(fā)送給主數(shù)據(jù)庫,由主數(shù)據(jù)庫通過數(shù)據(jù)庫鏈路(DBlink)將事務(wù)發(fā)送給從數(shù)據(jù)庫節(jié)點;步驟7、當(dāng)主數(shù)據(jù)庫和從數(shù)據(jù)庫接收的事務(wù)執(zhí)行完對應(yīng)操作后,將執(zhí)行的結(jié)果(成功或失?。┗仞伣o用戶。為了保證多個數(shù)據(jù)庫節(jié)點復(fù)制數(shù)據(jù)的一致性,寫入操作時必須采用事務(wù)處理的方式,要么所有的節(jié)點都修改成功,否則必須恢復(fù)到寫入之前的狀態(tài),對于分布系統(tǒng)的數(shù)據(jù)一致性控制,目前已有了較多的研究成果,但是對于多個獨立的數(shù)據(jù)庫系統(tǒng),如果采用分布式事務(wù)處理的方式,不但控制機制比較復(fù)雜,而且通信效率和可靠性都難以得到保證。本發(fā)明通過數(shù)據(jù)庫鏈路,實現(xiàn)了本地數(shù)據(jù)庫對遠程數(shù)據(jù)庫的DML操作,并充分利用了數(shù)據(jù)庫內(nèi)部的一致性維護機制進行事務(wù)處理,因而能夠很好的滿足全復(fù)制數(shù)據(jù)的一致性控制,采用數(shù)據(jù)庫鏈路的方式,將對多個數(shù)據(jù)庫節(jié)點的事務(wù)處理,轉(zhuǎn)化成對一個數(shù)據(jù)庫節(jié)點的事務(wù)處理,充分利用了數(shù)據(jù)庫事務(wù)處理的特點,大大簡化了對副本數(shù)據(jù)一致性控制的實現(xiàn),采用數(shù)據(jù)庫鏈路的多分布數(shù)據(jù)庫一致性處理結(jié)構(gòu)如圖4所示,這樣對多個數(shù)據(jù)庫的單條數(shù)據(jù)修改語句,就轉(zhuǎn)化為對主數(shù)據(jù)庫的一組數(shù)據(jù)修改的語句。采用數(shù)據(jù)庫鏈路進行全復(fù)制數(shù)據(jù)的一致性控制,對全復(fù)制數(shù)據(jù)表進行修改的DML語句如下:Q1:updatetest_tablesettest_column=’XXX’where....;通過數(shù)據(jù)庫鏈路改寫過的DML語句串的形式如下:updatetest_tablesettest_column=’XXX’where....;updatetest_table@link1settest_column=’XXX’where....;updatetest_table@link2settest_column=’XXX’where....;…updatetest_table@linkNsettest_column=’XXX’where....;本發(fā)明除了在DML操作的流程上保證數(shù)據(jù)處理的一致性外,還額外增加了一個一致性檢查流程,定期對多副本數(shù)據(jù)進行一致性比較,用戶可以通過配置信息設(shè)定檢查周期和需要檢查的數(shù)據(jù)表。對于兩個分布在不同數(shù)據(jù)庫中的A表(全復(fù)制數(shù)據(jù)表)數(shù)據(jù)的一致性檢查,采用如下的集合運算方式:Select*fromAminusselect*fromA@linkNunionallSelect*fromA@linkNminusselect*fromA;如果返回的結(jié)果集為空,則表示兩個節(jié)點的A表是完全一致的。即如果(A-B)U(B-A)為空集,則表示兩個集合中的數(shù)據(jù)都完全互相包含,因此兩個集合完全相等。檢查線程以主數(shù)據(jù)庫為模板,順序檢查其他所有的從數(shù)據(jù)庫節(jié)點的數(shù)據(jù),如果發(fā)現(xiàn)數(shù)據(jù)不一致,則刪除從數(shù)據(jù)庫中該表的數(shù)據(jù),從主數(shù)據(jù)庫進行數(shù)據(jù)同步。本發(fā)明在解決多個副本數(shù)據(jù)庫的一致性控制問題的同時,支持對全復(fù)制數(shù)據(jù)的自定義的事務(wù)處理,即把一組DML操作定義為整個事務(wù),只有所有的DML語句都執(zhí)行成功,才進行提交,否則所有的語句都不執(zhí)行,系統(tǒng)回退到事務(wù)執(zhí)行之前的狀態(tài)。用戶執(zhí)行自定義的事務(wù)處理方法如下,即采用一個SQL語句向量記錄所有的DML語句,全部執(zhí)行沒有異常時,才進行提交,具體如下:在實際應(yīng)用時,為了提高用戶自定義的事務(wù)處理性能,本發(fā)明可以采用客戶端緩存SQL語句的優(yōu)化策略,該優(yōu)化策略和無緩存策略以及服務(wù)器端緩存SQL語句的方式相比,客戶端緩存性能更好,而且能有效避免服務(wù)器端的資源死鎖。三種用戶自定義事務(wù)的SQL語句緩存策略的比較如表1所示。表1三種事務(wù)處理策略分析和比較采用客戶端緩存SQL語句的方式,能夠滿足在系統(tǒng)規(guī)模擴展時,得到線性的執(zhí)行時間比。在多副本一致性控制時,較好的滿足性能要求。全復(fù)制數(shù)據(jù)的修改必須在所有的節(jié)點都執(zhí)行成功,才能正確提交。但是在大規(guī)模系統(tǒng)中,節(jié)點的故障是不可避免的,必須保證在一個節(jié)點發(fā)生故障的情況下,系統(tǒng)依然能夠提供正常的服務(wù)。本發(fā)明在實際應(yīng)用時,可以通過配置域(ConfigurationDomain)來維護多副本數(shù)據(jù)的分布信息。配置域是一個記錄所有數(shù)據(jù)庫節(jié)點信息和當(dāng)前狀態(tài)的結(jié)構(gòu),一致性控制程序通過這個結(jié)構(gòu)對配置域上所有的數(shù)據(jù)庫進行數(shù)據(jù)更新的。在配置服務(wù)程序運行中,當(dāng)一個數(shù)據(jù)庫發(fā)生故障時,服務(wù)程序就會重新檢查該數(shù)據(jù)庫的狀態(tài),確認不可用時,則修改配置域中相應(yīng)數(shù)據(jù)庫的狀態(tài)標志,剔除該節(jié)點后繼續(xù)進行數(shù)據(jù)的修改。當(dāng)節(jié)點恢復(fù)時,需要運行數(shù)據(jù)庫同步恢復(fù)模塊,同步恢復(fù)模塊檢查故障數(shù)據(jù)庫節(jié)點的所有復(fù)制表數(shù)據(jù)和主數(shù)據(jù)庫節(jié)點的差別,發(fā)現(xiàn)不一致的情況則將主數(shù)據(jù)庫的數(shù)據(jù)同步到該數(shù)據(jù)庫中。恢復(fù)完成后,則修改配置域中的相應(yīng)內(nèi)容,將節(jié)點數(shù)據(jù)庫狀態(tài)置為正常。在對配置域中的數(shù)據(jù)庫狀態(tài)進行修改時,必須鎖住相應(yīng)的數(shù)據(jù)庫節(jié)點,此時暫時停止對全復(fù)制數(shù)據(jù)的更新,由于全復(fù)制分布的數(shù)據(jù)表通常數(shù)據(jù)量不大,因此恢復(fù)過程時間也不長,可控制在分鐘級別,在大規(guī)模集群數(shù)據(jù)庫系統(tǒng)中是可以容忍的。綜上所述,借助于本發(fā)明的上述技術(shù)方案,通過在主數(shù)據(jù)庫與從數(shù)據(jù)庫之間配置數(shù)據(jù)庫鏈路,將原先對所有數(shù)據(jù)庫的處理轉(zhuǎn)換成對主數(shù)據(jù)庫進行處理,然后再由主數(shù)據(jù)庫與從數(shù)據(jù)庫之間進行通信處理,從而簡化了對所有數(shù)據(jù)庫的一致性控制,保證了所有數(shù)據(jù)庫之間的同步性,而且,在進行處理時,還能夠?qū)⒁唤M操作同時作為一個事務(wù)進行處理,從而大大的提高了處理時的靈活性和便捷性。另外,本發(fā)明在根據(jù)事務(wù)執(zhí)行對應(yīng)操作后,還對從數(shù)據(jù)庫與主數(shù)據(jù)庫的執(zhí)行結(jié)果進行對比,以保證所有數(shù)據(jù)庫中數(shù)據(jù)的一致性,為所有數(shù)據(jù)庫中的數(shù)據(jù)的一致性提供了雙重保證,此外,本發(fā)明還能夠容忍從數(shù)據(jù)庫發(fā)生故障,并且,在發(fā)生故障的從數(shù)據(jù)庫恢復(fù)時,能夠自動的將主數(shù)據(jù)庫中執(zhí)行的結(jié)果同步到該從數(shù)據(jù)庫中,提高了數(shù)據(jù)處理時的可靠性。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。當(dāng)前第1頁1 2 3