專利名稱:分布式數(shù)據(jù)庫(kù)高可用性的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及分布式數(shù)據(jù)庫(kù)的高可用性等領(lǐng)域。
背景技術(shù):
在信息技術(shù)高速發(fā)展的今天,無論是互聯(lián)網(wǎng)還是企業(yè)內(nèi)部的數(shù)據(jù)量,都呈指數(shù)速度的發(fā)展和增加中。大數(shù)據(jù)背景下,分布式數(shù)據(jù)庫(kù)成為解決大數(shù)據(jù)瓶頸的重要手段,而如何實(shí)現(xiàn)分布式數(shù)據(jù)庫(kù)的高可用性對(duì)于分布式數(shù)據(jù)庫(kù)的應(yīng)用性至關(guān)重要。為了解決分布式數(shù)據(jù)庫(kù)的高可用性,發(fā)明了分布式冗余的方法,該方法通過將分布式數(shù)據(jù)庫(kù)中的各個(gè)節(jié)點(diǎn)實(shí)現(xiàn)在節(jié)點(diǎn)之間多級(jí)冗余,保證數(shù)據(jù)的高可用性。
發(fā)明內(nèi)容
本發(fā)明的目的是提供分布式數(shù)據(jù)庫(kù)實(shí)現(xiàn)高可用性的一種方法,通過將分布式數(shù)據(jù)庫(kù)集群分散的進(jìn)行同步冗余,并且將冗余數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)同時(shí)參與分布式數(shù)據(jù)庫(kù)的服務(wù),從而提高了分布式數(shù)據(jù)庫(kù)的高可用性,并且保證了分布式數(shù)據(jù)庫(kù)的一致性和完整性。為達(dá)到上述目的,本發(fā)明設(shè)定了一種分布式數(shù)據(jù)庫(kù)的高可用性。1.計(jì)算冗余節(jié)點(diǎn)位置,根據(jù)最高效的可用性,保證主節(jié)點(diǎn)和冗余節(jié)點(diǎn)足夠分散,滿足了在錯(cuò)誤發(fā)生時(shí)的高可用性達(dá)到99. 9%。2.更新操作時(shí),保證主節(jié)點(diǎn)和各級(jí)冗余節(jié)點(diǎn)并發(fā)的更新,包括了數(shù)據(jù)的插入更新和刪除操作。3.查詢操作時(shí),根據(jù)主節(jié)點(diǎn)和各級(jí)冗余節(jié)點(diǎn)根據(jù)權(quán)重分配查詢操作的執(zhí)行,提高了整個(gè)分布數(shù)據(jù)庫(kù)的服務(wù)性能。
附圖為本發(fā)明的工作流程示意圖,在本示例中,將在4個(gè)數(shù)據(jù)節(jié)點(diǎn)上實(shí)現(xiàn)2份冗余數(shù)據(jù)(加主節(jié)點(diǎn)共為3份)。從而能保證在任意2個(gè)節(jié)點(diǎn)故障時(shí)不影響整個(gè)分布式數(shù)據(jù)庫(kù)的正常使用。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明所述的技術(shù)方案做進(jìn)一步詳細(xì)描述。附圖展示了如何在分布式數(shù)據(jù)庫(kù)環(huán)境下實(shí)現(xiàn)高可用性,其中分布式數(shù)據(jù)庫(kù)共4臺(tái)服務(wù)器,冗余數(shù)為2,各個(gè)服務(wù)器的權(quán)重分別為I到,其具體實(shí)現(xiàn)步驟如下。I)初始化4個(gè)主節(jié)點(diǎn)。2)第一份冗余,為每一個(gè)數(shù)據(jù)庫(kù)節(jié)點(diǎn)選擇冗余時(shí),不能與主節(jié)點(diǎn)在同一臺(tái)服務(wù)器,同時(shí)該服務(wù)器的節(jié)點(diǎn)數(shù)量最少,這樣數(shù)據(jù)庫(kù)A的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器2上,數(shù)據(jù)庫(kù)B的冗余選擇在服務(wù)器3上,數(shù)據(jù)庫(kù)C的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器4上,數(shù)據(jù)庫(kù)D的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器I上。
3)第二份冗余,為每一個(gè)數(shù)據(jù)庫(kù)節(jié)點(diǎn)選擇冗余時(shí),不能與主節(jié)點(diǎn)在同一臺(tái)服務(wù)器,同時(shí)該服務(wù)器的節(jié)點(diǎn)數(shù)量最少,這樣數(shù)據(jù)庫(kù)A的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器3上,數(shù)據(jù)庫(kù)B的冗余選擇在服務(wù)器4上,數(shù)據(jù)庫(kù)C的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器I上,數(shù)據(jù)庫(kù)D的冗余選擇在數(shù)據(jù)庫(kù)服務(wù)器2上。4)更新操作時(shí),如果數(shù)據(jù)在數(shù)據(jù)庫(kù)A上操作,則需要在A,A’和A”上并發(fā)執(zhí)行。5)查詢操作時(shí),如果在數(shù)據(jù)庫(kù)A上執(zhí)行查詢,則服務(wù)器I分配到的查詢概率為I/(1+2+3),服務(wù)器2分配到的查詢概率2/(1+2+3),服務(wù)器3分配到的查詢概率3/(1+2+3)。6)當(dāng)任意2個(gè)節(jié)點(diǎn)故障后,剩余2個(gè)節(jié)點(diǎn)仍保持完整的數(shù)據(jù),不影響整個(gè)分布式數(shù)據(jù)庫(kù)的正常作用,從而保證分布式數(shù)據(jù)庫(kù)的高可用性。
權(quán)利要求
1.分布式數(shù)據(jù)庫(kù)的高可用性實(shí)現(xiàn)方法,其特征在于 1)分布式數(shù)據(jù)庫(kù)環(huán)境下,實(shí)現(xiàn)數(shù)據(jù)庫(kù)的高可用性,增加各個(gè)數(shù)據(jù)庫(kù)節(jié)點(diǎn)的多分冗余。
2)主節(jié)點(diǎn)與冗余節(jié)點(diǎn)分散在不同的數(shù)據(jù)庫(kù)服務(wù)器上,實(shí)現(xiàn)了高可用性。
3)主節(jié)點(diǎn)與冗余節(jié)點(diǎn)數(shù)據(jù)無延遲同步更新,保證數(shù)據(jù)的實(shí)時(shí)一致性。
4)主節(jié)點(diǎn)和冗余節(jié)點(diǎn)根據(jù)權(quán)重參與分布式數(shù)據(jù)庫(kù)對(duì)外提供的服務(wù),實(shí)現(xiàn)了分布式數(shù)據(jù)庫(kù)的聞效性。
2.如權(quán)利I所述的分布式數(shù)據(jù)庫(kù)環(huán)境下的高可用性實(shí)現(xiàn)方法,其特征在于主數(shù)據(jù)庫(kù)與冗余數(shù)據(jù)庫(kù)高效的分散在分布式數(shù)據(jù)庫(kù)下的不同節(jié)點(diǎn),實(shí)現(xiàn)了高可用性。
3.如權(quán)利I所述主節(jié)點(diǎn)與冗余節(jié)點(diǎn)無延遲同步更新數(shù)據(jù),保證數(shù)據(jù)的實(shí)時(shí)一致性,任意節(jié)點(diǎn)故障將不會(huì)影響數(shù)據(jù)一致性與完整性。
4.如權(quán)利I所述的主節(jié)點(diǎn)和冗余節(jié)點(diǎn)根據(jù)權(quán)重參與分布式數(shù)據(jù)庫(kù)對(duì)外提供的服務(wù),實(shí)現(xiàn)了分布式數(shù)據(jù)庫(kù)的高效性。
全文摘要
本發(fā)明的目的是提供分布式數(shù)據(jù)庫(kù)實(shí)現(xiàn)高可用性的一種方法,通過將分布式數(shù)據(jù)庫(kù)集群分散的進(jìn)行同步冗余,并且將冗余數(shù)據(jù)庫(kù)與主數(shù)據(jù)庫(kù)同時(shí)參與分布式數(shù)據(jù)庫(kù)的服務(wù),從而提高了分布式數(shù)據(jù)庫(kù)的高可用性,并且保證了分布式數(shù)據(jù)庫(kù)的一致性和完整性。
文檔編號(hào)G06F17/30GK103034697SQ201210517139
公開日2013年4月10日 申請(qǐng)日期2012年12月6日 優(yōu)先權(quán)日2012年12月6日
發(fā)明者不公告發(fā)明人 申請(qǐng)人:江蘇引跑網(wǎng)絡(luò)科技有限公司