專利名稱:一種數(shù)據(jù)更新的方法、系統(tǒng)及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)技術(shù),尤其涉及一種數(shù)據(jù)更新的方法、系統(tǒng)和設(shè)備。
背景技術(shù):
隨著軟件技術(shù)的發(fā)展以及企業(yè)信息化建設(shè),應(yīng)用系統(tǒng)所要處理的數(shù)據(jù)量越來越 龐大,所要服務(wù)的用戶數(shù)量也不斷增加,因此,在應(yīng)用系統(tǒng)中設(shè)置多個節(jié)點(diǎn),并在每個 節(jié)點(diǎn)的數(shù)據(jù)庫中存儲相同的應(yīng)用數(shù)據(jù),以提高應(yīng)用業(yè)務(wù)的數(shù)據(jù)處理效率。例如當(dāng)多 個用戶向應(yīng)用系統(tǒng)請求同一業(yè)務(wù)時,由于應(yīng)用系統(tǒng)中的每個節(jié)點(diǎn)中存儲了相同的應(yīng)用數(shù) 據(jù),因此,每個節(jié)點(diǎn)可以響應(yīng)一個用戶的請求,多業(yè)務(wù)的并行處理提高了數(shù)據(jù)處理效 率。為了保證多個節(jié)點(diǎn)的數(shù)據(jù)庫內(nèi)存儲的數(shù)據(jù)一致性,需要在一個節(jié)點(diǎn)的數(shù)據(jù)發(fā)生 變化時,及時更新其他節(jié)點(diǎn)內(nèi)的數(shù)據(jù)。常用的數(shù)據(jù)更新方式有以下兩種第一種應(yīng)用客戶端控制方式。在本方式下,當(dāng)有一個節(jié)點(diǎn)的數(shù)據(jù)發(fā)生變化時,需要向應(yīng)用系統(tǒng)中的應(yīng)用客戶 端發(fā)送數(shù)據(jù)更新請求,則應(yīng)用客戶端依次對其他各節(jié)點(diǎn)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行更新,使各 節(jié)點(diǎn)的數(shù)據(jù)保持一致。第二種數(shù)據(jù)庫雙向復(fù)制方式。在本方式下,當(dāng)有一個節(jié)點(diǎn)的數(shù)據(jù)發(fā)生變化時,利用數(shù)據(jù)庫復(fù)制功能,將自身 更新的數(shù)據(jù)內(nèi)容發(fā)送給其他節(jié)點(diǎn),使各節(jié)點(diǎn)的數(shù)據(jù)保持一致。在上述第一種方式下,需要在應(yīng)用系統(tǒng)中設(shè)置應(yīng)用客戶端,并為應(yīng)用客戶端配 置每個節(jié)點(diǎn)信息,提供訪問節(jié)點(diǎn)數(shù)據(jù)的接口,在節(jié)點(diǎn)數(shù)量較多時,會使應(yīng)用客戶端的設(shè) 置非常較復(fù)雜。在上述第二種方式下,當(dāng)兩個節(jié)點(diǎn)同時對同一字段的內(nèi)容進(jìn)行修改,且 修改后的數(shù)據(jù)不同時,兩個節(jié)點(diǎn)互相進(jìn)行雙向復(fù)制時會造成數(shù)據(jù)內(nèi)容沖突的問題,無法 保持節(jié)點(diǎn)的數(shù)據(jù)一致性;另外,當(dāng)有多個節(jié)點(diǎn)都進(jìn)行數(shù)據(jù)修改時,由于每個節(jié)點(diǎn)需要接 收其他節(jié)點(diǎn)的數(shù)據(jù)同時將自身修改的數(shù)據(jù)發(fā)送給其他節(jié)點(diǎn),導(dǎo)致數(shù)據(jù)庫壓力較大,嚴(yán)重 影響數(shù)據(jù)庫的正常工作。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種數(shù)據(jù)更新的方法、系統(tǒng)及設(shè)備,以解決節(jié)點(diǎn)之間雙向復(fù) 制時造成的數(shù)據(jù)內(nèi)容沖突和各節(jié)點(diǎn)內(nèi)數(shù)據(jù)庫工作壓力過大的問題。一種數(shù)據(jù)更新的方法,所述方法包括主節(jié)點(diǎn)接收從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含該從節(jié)點(diǎn)變 化的數(shù)據(jù)信息;主節(jié)點(diǎn)根據(jù)所述數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向需要進(jìn)行數(shù)據(jù) 更新的從節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)信息,指示接收到數(shù)據(jù)信息的從節(jié)點(diǎn)對保存的數(shù)據(jù)進(jìn)行更 新,更新后的主節(jié)點(diǎn)和全部從節(jié)點(diǎn)中保存的數(shù)據(jù)相同。
一種數(shù)據(jù)更新系統(tǒng),所述系統(tǒng)包括主節(jié)點(diǎn)和從節(jié)點(diǎn),其中所述主節(jié)點(diǎn),用于接收從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含 該從節(jié)點(diǎn)變化的數(shù)據(jù)信息,并根據(jù)所述數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向 需要進(jìn)行數(shù)據(jù)更新的從節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)信息;所述從節(jié)點(diǎn),用于根據(jù)接收到的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,更新后 的主節(jié)點(diǎn)和全部從節(jié)點(diǎn)中保存的數(shù)據(jù)相同。一種網(wǎng)絡(luò)設(shè)備,所述設(shè)備包括請求接收模塊,用于接收其他網(wǎng)絡(luò)設(shè)備發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請 求中包含其他網(wǎng)絡(luò)設(shè)備變化的數(shù)據(jù)信息;數(shù)據(jù)更新模塊,用于根據(jù)數(shù)據(jù)更新請求中的數(shù)據(jù)信息對保存的數(shù)據(jù)進(jìn)行更新;數(shù)據(jù)發(fā)送模塊,用于向其他需要進(jìn)行數(shù)據(jù)更新的網(wǎng)絡(luò)設(shè)備發(fā)送所述數(shù)據(jù)信息, 指示接收到數(shù)據(jù)信息的網(wǎng)絡(luò)設(shè)備對保存的數(shù)據(jù)進(jìn)行更新,更新后各網(wǎng)絡(luò)設(shè)備中保存的數(shù) 據(jù)相同;數(shù)據(jù)保存模塊,用于保存數(shù)據(jù)。由于本發(fā)明將應(yīng)用系統(tǒng)中的多節(jié)點(diǎn)劃分為一個主節(jié)點(diǎn)和多個從節(jié)點(diǎn)的形式,要 求主節(jié)點(diǎn)可以讀寫數(shù)據(jù),而從節(jié)點(diǎn)只能讀數(shù)據(jù),使得傳統(tǒng)數(shù)據(jù)一致性的更新過程由雙向 復(fù)制轉(zhuǎn)變?yōu)橹鞴?jié)點(diǎn)至從節(jié)點(diǎn)的單向復(fù)制,因此,解決了節(jié)點(diǎn)之間雙向復(fù)制時造成的數(shù)據(jù) 內(nèi)容沖突和各節(jié)點(diǎn)內(nèi)數(shù)據(jù)庫工作壓力過大的問題。
圖1為本發(fā)明實(shí)施例一中進(jìn)行數(shù)據(jù)更新的方法的示意圖;圖2為本發(fā)明實(shí)施例三中數(shù)據(jù)更新系統(tǒng)的結(jié)構(gòu)示意圖;圖3為本發(fā)明實(shí)施例四中網(wǎng)絡(luò)設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了實(shí)現(xiàn)本發(fā)明目的,本發(fā)明實(shí)施例將多節(jié)點(diǎn)劃分為一個主節(jié)點(diǎn)和至少一個從 節(jié)點(diǎn),要求主節(jié)點(diǎn)可以讀寫數(shù)據(jù),而從節(jié)點(diǎn)只能讀數(shù)據(jù),當(dāng)任一節(jié)點(diǎn)需要進(jìn)行數(shù)據(jù)更新 時,都要在主節(jié)點(diǎn)進(jìn)行數(shù)據(jù)更新后,通過單向復(fù)制技術(shù)實(shí)現(xiàn)從節(jié)點(diǎn)的數(shù)據(jù)更新,以解決 節(jié)點(diǎn)之間雙向復(fù)制時造成的數(shù)據(jù)內(nèi)容沖突和各節(jié)點(diǎn)內(nèi)數(shù)據(jù)庫工作壓力過大的問題。下面結(jié)合說明書附圖對本發(fā)明實(shí)施例進(jìn)行詳細(xì)描述。實(shí)施例一如圖1所示,為本發(fā)明實(shí)施例一中進(jìn)行數(shù)據(jù)更新的方法步驟示意圖,所述方法 包括以下步驟步驟101 主節(jié)點(diǎn)接收從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含 該從節(jié)點(diǎn)變化的數(shù)據(jù)信息。在本發(fā)明實(shí)施例中涉及的主節(jié)點(diǎn)和從節(jié)點(diǎn)是應(yīng)用系統(tǒng)中的節(jié)點(diǎn),每個節(jié)點(diǎn)中有 用于存儲數(shù)據(jù)的數(shù)據(jù)庫,為了保證應(yīng)用業(yè)務(wù)的正確、高效運(yùn)行,要求主從節(jié)點(diǎn)中存儲的 數(shù)據(jù)內(nèi)容相同??梢詫?yīng)用系統(tǒng)中的任意一個節(jié)點(diǎn)作為主節(jié)點(diǎn),其他節(jié)點(diǎn)作為從節(jié)點(diǎn)。
5
主節(jié)點(diǎn)的數(shù)量為一個,從節(jié)點(diǎn)的數(shù)量可以為一個也可以為多個。數(shù)據(jù)更新請求中包含的數(shù)據(jù)信息主要包括以下內(nèi)容更新方式、更新字段標(biāo)志 位和更新內(nèi)容;這里的更新方式包括刪除、增加和修改中的一種或多種組合。步驟102 主節(jié)點(diǎn)根據(jù)從節(jié)點(diǎn)變化的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新。主節(jié)點(diǎn)接收到一條數(shù)據(jù)更新請求后,讀取并解析其中一個從節(jié)點(diǎn)變化的數(shù)據(jù)信 息,按照數(shù)據(jù)信息中的更新方式和更新內(nèi)容,對自身保存的數(shù)據(jù)中更新字段標(biāo)志位指示 的字段中的內(nèi)容進(jìn)行更新。步驟103:主節(jié)點(diǎn)向需要進(jìn)行數(shù)據(jù)更新的從節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)信息,指示接收 到數(shù)據(jù)信息的從節(jié)點(diǎn)對保存的數(shù)據(jù)進(jìn)行更新。在本步驟中,假設(shè)發(fā)送數(shù)據(jù)更新請求的從節(jié)點(diǎn)為從節(jié)點(diǎn)A,則主節(jié)點(diǎn)可以向全 部從節(jié)點(diǎn)(包括從節(jié)點(diǎn)A)發(fā)送數(shù)據(jù)信息,要求全部從節(jié)點(diǎn)只能根據(jù)接收到的來自主節(jié)點(diǎn) 的數(shù)據(jù)信息后,根據(jù)數(shù)據(jù)信息中的內(nèi)容對自身保存的數(shù)據(jù)進(jìn)行更新;主節(jié)點(diǎn)還可以向發(fā) 送數(shù)據(jù)更新請求之外的其他從節(jié)點(diǎn)(除從節(jié)點(diǎn)A之外的從節(jié)點(diǎn))發(fā)送數(shù)據(jù)信息,要求其 他從節(jié)點(diǎn)根據(jù)接收到的數(shù)據(jù)信息,對從節(jié)點(diǎn)A請求的信息進(jìn)行更新,從節(jié)點(diǎn)A可以在發(fā) 起數(shù)據(jù)更新請求之前或之后,按照數(shù)據(jù)更新請求中的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更 新。不論用上述何種方式進(jìn)行數(shù)據(jù)更新,更新后的主節(jié)點(diǎn)和全部從節(jié)點(diǎn)中保存的數(shù) 據(jù)相同,以保證多節(jié)點(diǎn)數(shù)據(jù)的一致性。每個從節(jié)點(diǎn)按照主節(jié)點(diǎn)發(fā)送的數(shù)據(jù)信息中的更新方式和更新內(nèi)容,對自身保存 的數(shù)據(jù)中更新字段標(biāo)志位指示的字段中的內(nèi)容進(jìn)行更新。在本實(shí)施例中,發(fā)送數(shù)據(jù)更新請求的從節(jié)點(diǎn)并不在生成數(shù)據(jù)更新請求時進(jìn)行自 我更新,而是在步驟103中讀取主節(jié)點(diǎn)發(fā)送的數(shù)據(jù)信息而進(jìn)行數(shù)據(jù)更新。在本實(shí)施例一中,步驟102和步驟103的順序不固定,主節(jié)點(diǎn)可以在接收到數(shù)據(jù) 更新請求后,可以先將其中的數(shù)據(jù)信息發(fā)送給從節(jié)點(diǎn)再進(jìn)行自我更新,也可以進(jìn)行自我 更新后再將數(shù)據(jù)信息發(fā)送給從節(jié)點(diǎn),或者在進(jìn)行自我更新的過程中將數(shù)據(jù)信息發(fā)送給從 節(jié)點(diǎn)。步驟104:當(dāng)主節(jié)點(diǎn)中的數(shù)據(jù)需要變化時,主節(jié)點(diǎn)根據(jù)需要變化的數(shù)據(jù)生成數(shù) 據(jù)信息。步驟105:主節(jié)點(diǎn)根據(jù)生成的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新。步驟106:主節(jié)點(diǎn)向每個從節(jié)點(diǎn)發(fā)送生成的所述數(shù)據(jù)信息,指示各從節(jié)點(diǎn)根據(jù) 接收到的數(shù)據(jù)信息對保存的數(shù)據(jù)進(jìn)行更新。需要說明的是,本實(shí)施例中步驟104 步驟106可以在步驟101之前發(fā)生,也可 以在步驟103之后發(fā)生,如果在步驟101 步驟103的執(zhí)行過程中主節(jié)點(diǎn)中的數(shù)據(jù)需要變 化,則在步驟103執(zhí)行完畢后再執(zhí)行步驟104 步驟106。通過以上步驟101 步驟106的描述,實(shí)現(xiàn)了多節(jié)點(diǎn)內(nèi)的數(shù)據(jù)更新,由于每個節(jié) 點(diǎn)的數(shù)據(jù)更新過程都由主節(jié)點(diǎn)通過單向復(fù)制技術(shù)完成,各從節(jié)點(diǎn)只需要單向接收主節(jié)點(diǎn) 發(fā)送的數(shù)據(jù),避免了節(jié)點(diǎn)中數(shù)據(jù)庫同時進(jìn)行雙向復(fù)制導(dǎo)致數(shù)據(jù)庫工作壓力過大的問題, 并且,當(dāng)多個節(jié)點(diǎn)需要同時對同一字段內(nèi)容進(jìn)行不同修改時,各節(jié)點(diǎn)需要向主節(jié)點(diǎn)發(fā)送 數(shù)據(jù)更新請求,由于主節(jié)點(diǎn)一次只能響應(yīng)一個數(shù)據(jù)更新請求,因此,避免了多節(jié)點(diǎn)雙向復(fù)制時的數(shù)據(jù)沖突問題;另外,應(yīng)用系統(tǒng)中的各節(jié)點(diǎn)之間具有相互通信的能力,因此, 不需要對主節(jié)點(diǎn)的接口進(jìn)行額外配置,使本發(fā)明實(shí)施例方案實(shí)現(xiàn)簡便。在實(shí)施例一的方案中,可能存在多個從節(jié)點(diǎn)同時發(fā)起數(shù)據(jù)更新請求,也可能在 一段時間內(nèi)沒有從節(jié)點(diǎn)發(fā)起數(shù)據(jù)更新請求,則主節(jié)點(diǎn)可以維護(hù)一個消息隊(duì)列,當(dāng)有一個 從節(jié)點(diǎn)發(fā)起數(shù)據(jù)更新請求時,就將該數(shù)據(jù)更新請求寫入消息隊(duì)列中。如果在短時間內(nèi)有 多個從節(jié)點(diǎn)發(fā)起數(shù)據(jù)更新請求,則按照數(shù)據(jù)更新請求到達(dá)主節(jié)點(diǎn)的先后順序排列在消息 隊(duì)列中。由于主節(jié)點(diǎn)不一定能實(shí)時接收到從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,則可以在步驟101 之前執(zhí)行以下步驟步驟100:主節(jié)點(diǎn)啟動后,對消息隊(duì)列中的內(nèi)容進(jìn)行檢測,判斷消息隊(duì)列中是 否有未處理的數(shù)據(jù)更新請求;若有,則執(zhí)行步驟101;否則,將對消息隊(duì)列繼續(xù)進(jìn)行檢 測。如果在步驟100中檢測出消息隊(duì)列中存在多個數(shù)據(jù)更新請求,則主節(jié)點(diǎn)將接收 到的各數(shù)據(jù)更新請求按接收先后順序排列在消息隊(duì)列中。步驟101中主節(jié)點(diǎn)依次讀取排 列在消息隊(duì)列第一位的數(shù)據(jù)更新請求,然后,在步驟102中主節(jié)點(diǎn)根據(jù)消息隊(duì)列中的各 數(shù)據(jù)更新請求的先后順序,依次對自身保存的數(shù)據(jù)進(jìn)行更新,以及,在進(jìn)行一次數(shù)據(jù)更 新后,將本次用于數(shù)據(jù)更新的數(shù)據(jù)信息向每個從節(jié)點(diǎn)發(fā)送。例如步驟100中檢測出消 息隊(duì)列中按照接收先后順序排列兩個數(shù)據(jù)更新請求,分別為數(shù)據(jù)更新請求1,數(shù)據(jù)更新請 求2。主節(jié)點(diǎn)首先讀取數(shù)據(jù)更新請求1,然后依據(jù)數(shù)據(jù)更新請求1中的數(shù)據(jù)信息對自身保 存的數(shù)據(jù)進(jìn)行更新,以及將數(shù)據(jù)更新請求1中的數(shù)據(jù)信息發(fā)送給各從節(jié)點(diǎn);接著,主節(jié) 點(diǎn)再讀取數(shù)據(jù)更新請求2,并再次進(jìn)行數(shù)據(jù)更新過程。實(shí)施例二本發(fā)明實(shí)施例一的方案可以應(yīng)用在多種應(yīng)用系統(tǒng)中,如PUSHMAIL應(yīng)用系統(tǒng) 中。下面通過具體的實(shí)例說明實(shí)施例一的具體實(shí)現(xiàn)方法。假設(shè)本實(shí)施例二中從節(jié)點(diǎn)1需要將字段1中的數(shù)據(jù)修改為A,從節(jié)點(diǎn)2需要將字 段1中的數(shù)據(jù)刪除,本實(shí)施例二的方案如下第一步從節(jié)點(diǎn)1將更新的數(shù)據(jù)封裝成數(shù)據(jù)更新請求1,并發(fā)送至消息隊(duì)列,其 中數(shù)據(jù)信息的內(nèi)容如表1所示;從節(jié)點(diǎn)2將更新的數(shù)據(jù)封裝成數(shù)據(jù)更新請求2,并發(fā)送至 消息隊(duì)列,其中數(shù)據(jù)信息的內(nèi)容如表2所示。
請求的從節(jié)點(diǎn)標(biāo)識更新方式更新字段標(biāo)志位更新內(nèi)容從節(jié)點(diǎn)1修改字段1A表1
請求的從節(jié)點(diǎn)標(biāo)識更新方式更新字段標(biāo)志位更新內(nèi)容
權(quán)利要求
1.一種數(shù)據(jù)更新的方法,其特征在于,所述方法包括主節(jié)點(diǎn)接收從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含該從節(jié)點(diǎn)變化的 數(shù)據(jù)信息;主節(jié)點(diǎn)根據(jù)所述數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向需要進(jìn)行數(shù)據(jù)更新 的從節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)信息,指示接收到數(shù)據(jù)信息的從節(jié)點(diǎn)對保存的數(shù)據(jù)進(jìn)行更新,更 新后的主節(jié)點(diǎn)和全部從節(jié)點(diǎn)中保存的數(shù)據(jù)相同。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括當(dāng)主節(jié)點(diǎn)中的數(shù)據(jù)需要變化時,主節(jié)點(diǎn)根據(jù)需要變化的數(shù)據(jù)生成數(shù)據(jù)信息;主節(jié)點(diǎn)根據(jù)生成的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向每個從節(jié)點(diǎn)發(fā)送 生成的所述數(shù)據(jù)信息,指示各從節(jié)點(diǎn)根據(jù)接收到的數(shù)據(jù)信息對保存的數(shù)據(jù)進(jìn)行更新。
3.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括在主節(jié)點(diǎn)接收多個數(shù)據(jù)更新請求時,主節(jié)點(diǎn)將接收到的各數(shù)據(jù)更新請求按接收先后 順序排列成消息隊(duì)列;主節(jié)點(diǎn)根據(jù)從節(jié)點(diǎn)變化的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向每個從節(jié) 點(diǎn)發(fā)送所述數(shù)據(jù)信息,包括主節(jié)點(diǎn)根據(jù)消息隊(duì)列中的各數(shù)據(jù)更新請求,依次對自身保存的數(shù)據(jù)進(jìn)行更新,以 及,在進(jìn)行一次數(shù)據(jù)更新后,將本次用于數(shù)據(jù)更新的數(shù)據(jù)信息向每個從節(jié)點(diǎn)發(fā)送。
4.如權(quán)利要求1 3任一所述的方法,其特征在于,所述數(shù)據(jù)更新請求中的數(shù)據(jù)信息包括更新方式、更新字段標(biāo)志位和更新內(nèi)容;主節(jié)點(diǎn)和從節(jié)點(diǎn)按照所述更新方式和更新內(nèi)容,對自身保存的數(shù)據(jù)中更新字段標(biāo)志 位指示的字段中的內(nèi)容進(jìn)行更新。
5 種數(shù)據(jù)更新系統(tǒng),其特征在于,所述系統(tǒng)包括主節(jié)點(diǎn)和從節(jié)點(diǎn),其中所述主節(jié)點(diǎn),用于接收從節(jié)點(diǎn)發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含該從節(jié)點(diǎn)變化的數(shù)據(jù)信息,并根據(jù)所述數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向需要 進(jìn)行數(shù)據(jù)更新的從節(jié)點(diǎn)發(fā)送所述數(shù)據(jù)信息;所述從節(jié)點(diǎn),用于根據(jù)接收到的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,更新后的主 節(jié)點(diǎn)和全部從節(jié)點(diǎn)中保存的數(shù)據(jù)相同。
6.如權(quán)利要求5所述的系統(tǒng),其特征在于,所述需要進(jìn)行數(shù)據(jù)更新的從節(jié)點(diǎn)為全部從 節(jié)點(diǎn),或發(fā)送數(shù)據(jù)更新請求之外的其他從節(jié)點(diǎn)。
7.如權(quán)利要求5或6所述的系統(tǒng),其特征在于,所述主節(jié)點(diǎn),還用于在自身數(shù)據(jù)需要變化時,根據(jù)需要變化的數(shù)據(jù)生成數(shù)據(jù)信息, 并按照生成的數(shù)據(jù)信息對自身保存的數(shù)據(jù)進(jìn)行更新,以及,向每個從節(jié)點(diǎn)發(fā)送生成的所 述數(shù)據(jù)信息。
8.如權(quán)利要求5或6所述的系統(tǒng),其特征在于,所述主節(jié)點(diǎn),還用于在接收多個數(shù)據(jù)更新請求時,將接收到的各數(shù)據(jù)更新請求按接 收先后順序排列成消息隊(duì)列,并根據(jù)消息隊(duì)列中的各數(shù)據(jù)更新請求,依次對自身保存的 數(shù)據(jù)進(jìn)行更新,以及,在進(jìn)行一次數(shù)據(jù)更新后,將本次用于數(shù)據(jù)更新的數(shù)據(jù)信息向每個 從節(jié)點(diǎn)發(fā)送。
9.一種網(wǎng)絡(luò)設(shè)備,其特征在于,所述設(shè)備包括請求接收模塊,用于接收其他網(wǎng)絡(luò)設(shè)備發(fā)送的數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中 包含其他網(wǎng)絡(luò)設(shè)備變化的數(shù)據(jù)信息;數(shù)據(jù)更新模塊,用于根據(jù)數(shù)據(jù)更新請求中的數(shù)據(jù)信息對保存的數(shù)據(jù)進(jìn)行更新; 數(shù)據(jù)發(fā)送模塊,用于向其他需要進(jìn)行數(shù)據(jù)更新的網(wǎng)絡(luò)設(shè)備發(fā)送所述數(shù)據(jù)信息,指示 接收到數(shù)據(jù)信息的網(wǎng)絡(luò)設(shè)備對保存的數(shù)據(jù)進(jìn)行更新,更新后各網(wǎng)絡(luò)設(shè)備中保存的數(shù)據(jù)相 同;數(shù)據(jù)保存模塊,用于保存數(shù)據(jù)。
10.如權(quán)利要求9所述的網(wǎng)絡(luò)設(shè)備,其特征在于,所述設(shè)備還包括 請求發(fā)送模塊,用于向其他網(wǎng)絡(luò)設(shè)備發(fā)送數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中包含 自身變化的數(shù)據(jù)信息;數(shù)據(jù)接收模塊,用于接收其他網(wǎng)絡(luò)設(shè)備發(fā)送的數(shù)據(jù)信息;所述數(shù)據(jù)更新模塊,還用于根據(jù)其他網(wǎng)絡(luò)設(shè)備發(fā)送的數(shù)據(jù)信息對保存的數(shù)據(jù)進(jìn)行更新。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)更新的方法、系統(tǒng)及設(shè)備,通過將應(yīng)用系統(tǒng)中的多節(jié)點(diǎn)劃分為一個主節(jié)點(diǎn)和多個從節(jié)點(diǎn)的形式,要求主節(jié)點(diǎn)可以讀寫數(shù)據(jù),而從節(jié)點(diǎn)只能讀數(shù)據(jù),使得傳統(tǒng)數(shù)據(jù)一致性的更新過程由雙向復(fù)制轉(zhuǎn)變?yōu)橹鞴?jié)點(diǎn)至從節(jié)點(diǎn)的單向復(fù)制,因此,解決了節(jié)點(diǎn)之間雙向復(fù)制時造成的數(shù)據(jù)內(nèi)容沖突和各節(jié)點(diǎn)內(nèi)數(shù)據(jù)庫工作壓力過大的問題。
文檔編號H04L1/22GK102012899SQ20091009232
公開日2011年4月13日 申請日期2009年9月7日 優(yōu)先權(quán)日2009年9月7日
發(fā)明者于蓉蓉, 劉越, 王磊, 王磊建, 范曉暉 申請人:中國移動通信集團(tuán)公司