[發(fā)明專利]分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)及方法無效
| 申請(qǐng)?zhí)枺?/td> | 200910110179.5 | 申請(qǐng)日: | 2009-11-12 |
| 公開(公告)號(hào): | CN102063427A | 公開(公告)日: | 2011-05-18 |
| 發(fā)明(設(shè)計(jì))人: | 肖旸;劉剛;鄭國斌 | 申請(qǐng)(專利權(quán))人: | 中興通訊股份有限公司 |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30;G06F11/00 |
| 代理公司: | 深圳市世紀(jì)恒程知識(shí)產(chǎn)權(quán)代理事務(wù)所 44287 | 代理人: | 胡海國 |
| 地址: | 518057 廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 分布式 數(shù)據(jù)庫 系統(tǒng) 中的 異常 處理 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明領(lǐng)域一般涉及數(shù)據(jù)庫系統(tǒng)領(lǐng)域,尤其涉及分布式數(shù)據(jù)庫系統(tǒng)發(fā)生異常時(shí)的處理方法及系統(tǒng)。
背景技術(shù)
隨著傳統(tǒng)的數(shù)據(jù)庫技術(shù)日趨成熟,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的飛速發(fā)展和應(yīng)用范圍的擴(kuò)大,以分布式為主要特征的數(shù)據(jù)庫系統(tǒng)的研究與開發(fā)受到人們的注意。分布式數(shù)據(jù)庫是數(shù)據(jù)庫技術(shù)與計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)相結(jié)合的產(chǎn)物,在數(shù)據(jù)庫領(lǐng)域已形成一個(gè)分支。在分布式數(shù)據(jù)庫系統(tǒng)中,通常采用冗余備份的方式,同時(shí)運(yùn)行兩個(gè)或兩個(gè)以上包含相同內(nèi)容的數(shù)據(jù)庫節(jié)點(diǎn)來提高數(shù)據(jù)庫系統(tǒng)的可靠性。在只有一個(gè)主數(shù)據(jù)庫節(jié)點(diǎn)的分布式數(shù)據(jù)庫系統(tǒng)中,由于只有主數(shù)據(jù)庫節(jié)點(diǎn)在工作,因而客戶端對(duì)數(shù)據(jù)庫的寫操作必須在該單一的主數(shù)據(jù)庫節(jié)點(diǎn)上進(jìn)行,而其他從數(shù)據(jù)庫節(jié)點(diǎn)只能完成讀操作的訪問。
為了提高分布式數(shù)據(jù)庫系統(tǒng)的訪問效率,客戶端需記錄當(dāng)前系統(tǒng)的主數(shù)據(jù)庫節(jié)點(diǎn),并將寫操作請(qǐng)求發(fā)送到主數(shù)據(jù)庫節(jié)點(diǎn),因此,當(dāng)分布式數(shù)據(jù)庫系統(tǒng)發(fā)生主數(shù)據(jù)庫節(jié)點(diǎn)和備用數(shù)據(jù)庫節(jié)點(diǎn)的切換,比如主數(shù)據(jù)庫節(jié)點(diǎn)發(fā)生異常而沒響應(yīng),此時(shí)分布式數(shù)據(jù)庫系統(tǒng)還沒有確定新的主數(shù)據(jù)庫節(jié)點(diǎn)時(shí)候,數(shù)據(jù)庫系統(tǒng)就會(huì)出現(xiàn)暫時(shí)的寫訪問失敗。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)及方法,以解決主數(shù)據(jù)庫節(jié)點(diǎn)發(fā)生異常而沒響應(yīng),此時(shí)分布式數(shù)據(jù)庫系統(tǒng)還沒有確定新的主數(shù)據(jù)庫節(jié)點(diǎn)時(shí)候,數(shù)據(jù)庫系統(tǒng)就會(huì)出現(xiàn)暫時(shí)的寫訪問失敗的問題。
本發(fā)明提供的分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng),設(shè)置于數(shù)據(jù)庫節(jié)點(diǎn)中,其包括第一判斷模塊,用于判斷主數(shù)據(jù)庫節(jié)點(diǎn)是否發(fā)生異常,并輸出判斷結(jié)果;緩存模塊,用于在判斷結(jié)果為主數(shù)據(jù)庫節(jié)點(diǎn)發(fā)生異常時(shí),將接收到的寫請(qǐng)求緩存;第一寫請(qǐng)求發(fā)送模塊,用于當(dāng)判斷結(jié)果為主數(shù)據(jù)庫節(jié)點(diǎn)正常時(shí),將緩存模塊中的寫請(qǐng)求轉(zhuǎn)發(fā)到主數(shù)據(jù)庫節(jié)點(diǎn)。
優(yōu)選的,上述分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)還包括第二判斷模塊,用于判斷接收到寫請(qǐng)求或者狀態(tài)變化通知的數(shù)據(jù)庫節(jié)點(diǎn)是否為主數(shù)據(jù)庫節(jié)點(diǎn);當(dāng)數(shù)據(jù)庫節(jié)點(diǎn)是主數(shù)據(jù)庫節(jié)點(diǎn)時(shí),第二判斷模塊通知主數(shù)據(jù)庫節(jié)點(diǎn)根據(jù)寫請(qǐng)求進(jìn)行寫操作,并給客戶端返回操作結(jié)果。
優(yōu)選的,當(dāng)?shù)诙袛嗄K判斷該數(shù)據(jù)庫節(jié)點(diǎn)不是主節(jié)點(diǎn)時(shí),還通知第一判斷模塊判斷主數(shù)據(jù)庫節(jié)點(diǎn)是否發(fā)生異常。
優(yōu)選的,上述分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)還包括設(shè)置于客戶端的狀態(tài)信息獲取模塊,用于定時(shí)獲取分布式數(shù)據(jù)庫系統(tǒng)各數(shù)據(jù)庫節(jié)點(diǎn)的狀態(tài)信息并輸出;設(shè)置于客戶端的第三判斷模塊,用于根據(jù)所述狀態(tài)信息判斷是否存在主數(shù)據(jù)庫節(jié)點(diǎn),并輸出判斷結(jié)果;設(shè)置于客戶端的第二寫請(qǐng)求發(fā)送模塊,用于在判斷結(jié)果為存在主數(shù)據(jù)庫節(jié)點(diǎn)時(shí),將寫請(qǐng)求發(fā)往主數(shù)據(jù)庫節(jié)點(diǎn);或者用于在判斷結(jié)果為不存在主數(shù)據(jù)庫節(jié)點(diǎn)時(shí),將寫請(qǐng)求發(fā)往備用數(shù)據(jù)庫節(jié)點(diǎn)。
本發(fā)明提供的分布式數(shù)據(jù)庫系統(tǒng)中的異常處理方法,包括數(shù)據(jù)庫節(jié)點(diǎn)判斷主數(shù)據(jù)庫節(jié)點(diǎn)是否發(fā)生異常,并輸出判斷結(jié)果;在判斷結(jié)果為主數(shù)據(jù)庫節(jié)點(diǎn)發(fā)生異常時(shí),數(shù)據(jù)庫節(jié)點(diǎn)將接收到的寫請(qǐng)求緩存;當(dāng)判斷結(jié)果為主數(shù)據(jù)庫節(jié)點(diǎn)正常時(shí),數(shù)據(jù)庫節(jié)點(diǎn)緩存的寫請(qǐng)求轉(zhuǎn)發(fā)到主數(shù)據(jù)庫節(jié)點(diǎn)。
優(yōu)選的,上述分布式數(shù)據(jù)庫系統(tǒng)中的異常處理方法,在數(shù)據(jù)庫節(jié)點(diǎn)判斷主數(shù)據(jù)庫節(jié)點(diǎn)是否發(fā)生異常,并輸出判斷結(jié)果之前還包括如下步驟:數(shù)據(jù)庫節(jié)點(diǎn)接收到寫請(qǐng)求或者狀態(tài)信息之后,判斷自身是否為主數(shù)據(jù)庫節(jié)點(diǎn),并輸出判斷結(jié)果;如果判斷結(jié)果為自身不是主數(shù)據(jù)庫節(jié)點(diǎn),則所述數(shù)據(jù)庫節(jié)點(diǎn)判斷主數(shù)據(jù)庫節(jié)點(diǎn)是否發(fā)生異常。
優(yōu)選的,如果判斷結(jié)果為自身是主數(shù)據(jù)庫節(jié)點(diǎn),則所述數(shù)據(jù)庫節(jié)點(diǎn)處理接收到的寫請(qǐng)求。
優(yōu)選的,上述分布式數(shù)據(jù)庫系統(tǒng)中的異常處理方法,還包括如下步驟:客戶端定時(shí)獲取分布式數(shù)據(jù)庫系統(tǒng)各數(shù)據(jù)庫節(jié)點(diǎn)的狀態(tài)信息;客戶端根據(jù)所述狀態(tài)信息判斷是否存在主數(shù)據(jù)庫節(jié)點(diǎn),并輸出判斷結(jié)果;如果判斷結(jié)果為存在主數(shù)據(jù)庫節(jié)點(diǎn),客戶端將寫請(qǐng)求發(fā)往主數(shù)據(jù)庫節(jié)點(diǎn);如果判斷結(jié)果為不存在主數(shù)據(jù)庫節(jié)點(diǎn),客戶端將寫請(qǐng)求發(fā)往備用數(shù)據(jù)庫節(jié)點(diǎn)。
本發(fā)明實(shí)施例中的分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)及方法,可解決主數(shù)據(jù)庫節(jié)點(diǎn)發(fā)生異常而沒響應(yīng),此時(shí)分布式數(shù)據(jù)庫系統(tǒng)還沒有確定新的主數(shù)據(jù)庫節(jié)點(diǎn)時(shí)候,數(shù)據(jù)庫系統(tǒng)就會(huì)出現(xiàn)暫時(shí)的寫訪問失敗的問題。
附圖說明
圖1所示為本發(fā)明一種分布式數(shù)據(jù)庫系統(tǒng)實(shí)施例的示意圖;
圖2所示為本發(fā)明分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)的一種實(shí)施例的結(jié)構(gòu)示意圖;
圖3所示為本發(fā)明分布式數(shù)據(jù)庫系統(tǒng)中的異常處理系統(tǒng)的另一種實(shí)施例的結(jié)構(gòu)示意圖;
圖4所示為本發(fā)明一種分布式數(shù)據(jù)庫系統(tǒng)中的異常處理方法實(shí)施例的流程圖;
圖5所示為客戶端進(jìn)行寫操作的處理流程;
圖6所示為本發(fā)明數(shù)據(jù)庫節(jié)點(diǎn)收到寫操作請(qǐng)求的處理流程;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中興通訊股份有限公司,未經(jīng)中興通訊股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910110179.5/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)庫
- 數(shù)據(jù)庫管理系統(tǒng)及數(shù)據(jù)庫
- 數(shù)據(jù)庫構(gòu)筑裝置、數(shù)據(jù)庫檢索裝置、數(shù)據(jù)庫裝置、數(shù)據(jù)庫構(gòu)筑方法、以及數(shù)據(jù)庫檢索方法
- 數(shù)據(jù)庫和數(shù)據(jù)庫處理方法
- 數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫更新方法、數(shù)據(jù)庫以及數(shù)據(jù)庫更新程序
- 容器數(shù)據(jù)庫
- 數(shù)據(jù)庫同步方法及數(shù)據(jù)庫
- 一種MongoDB數(shù)據(jù)庫對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫語句執(zhí)行方法及裝置





