SQLSERVER 并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)_第1頁(yè)
SQLSERVER 并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)_第2頁(yè)
SQLSERVER 并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)_第3頁(yè)
SQLSERVER 并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)_第4頁(yè)
SQLSERVER 并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——SQLSERVER并行數(shù)據(jù)庫(kù)集群實(shí)現(xiàn)Moebius集群的架構(gòu)

Moebius集群采用無(wú)共享磁盤(pán)架構(gòu)

Moebius集群由一組數(shù)據(jù)庫(kù)服務(wù)器組成,每個(gè)服務(wù)器上安裝一致的數(shù)據(jù)庫(kù),集群支持無(wú)共享磁盤(pán)架構(gòu),各機(jī)器可以不連接一個(gè)共享設(shè)備,數(shù)據(jù)可以存儲(chǔ)在每個(gè)機(jī)器自己的存儲(chǔ)介質(zhì)中。

無(wú)共享磁盤(pán)架構(gòu),使得存儲(chǔ)不再是單點(diǎn),系統(tǒng)可用性提高,同時(shí)還可以充分利用集群中每個(gè)機(jī)器的CPU、I/O等硬件來(lái)實(shí)現(xiàn)集群的高性能。

無(wú)需價(jià)格昂揚(yáng)的共享磁盤(pán)柜,只要使用2臺(tái)服務(wù)器即可輕松構(gòu)筑低成本的集群。

Moebius集群架構(gòu)的分類(lèi)

依據(jù)數(shù)據(jù)是否分區(qū),Moebius集群架構(gòu)分為標(biāo)準(zhǔn)架構(gòu)和高級(jí)架構(gòu):

標(biāo)準(zhǔn)架構(gòu):每個(gè)節(jié)點(diǎn)中具有完全一致的數(shù)據(jù),每個(gè)節(jié)點(diǎn)都擁有數(shù)據(jù)全集。高級(jí)架構(gòu):每個(gè)節(jié)點(diǎn)中數(shù)據(jù)是不同的,每個(gè)節(jié)點(diǎn)只擁有數(shù)據(jù)全集的一部分。

MoebiusForSQLServer標(biāo)準(zhǔn)架構(gòu)

Moebius集群是一組相互獨(dú)立的服務(wù)器,通過(guò)相互協(xié)作形成一個(gè)統(tǒng)一的整體。集群中多個(gè)節(jié)點(diǎn)相互連接,這樣冗余的硬件架構(gòu)不但可以避免單點(diǎn)故障而且提供了優(yōu)良的故障恢復(fù)能力。一旦發(fā)生系統(tǒng)失敗,Moebius集群對(duì)用戶保證最高的可用性,保障關(guān)鍵是業(yè)務(wù)數(shù)據(jù)不丟失。

Moebius集群標(biāo)準(zhǔn)架構(gòu)

一個(gè)集群數(shù)據(jù)庫(kù)可以看作是一個(gè)被多個(gè)應(yīng)用實(shí)例訪問(wèn)的單一數(shù)據(jù)庫(kù)。在Moebius集群中,每個(gè)SQLServer實(shí)例在各自的服務(wù)器上運(yùn)行。隨著應(yīng)用的增加,當(dāng)需要添加額外的資源時(shí),可以在不停機(jī)的狀況下很簡(jiǎn)單地增加節(jié)點(diǎn)。

標(biāo)準(zhǔn)架構(gòu)中間件工作原理

中間件駐留在每個(gè)機(jī)器的數(shù)據(jù)庫(kù)中,監(jiān)測(cè)數(shù)據(jù)庫(kù)內(nèi)數(shù)據(jù)的變化,并將變化的數(shù)據(jù)同步到其它數(shù)據(jù)庫(kù)中。數(shù)據(jù)同步完成后客戶端才會(huì)得到響應(yīng),同步過(guò)程是并發(fā)完成的,因此同步到多個(gè)數(shù)據(jù)庫(kù)和同步到一個(gè)數(shù)據(jù)庫(kù)的時(shí)間基本相等;另外同步過(guò)程是在事務(wù)環(huán)境下完成的,保證了多份數(shù)據(jù)的數(shù)據(jù)一致性。

正由于中間件宿主在數(shù)據(jù)庫(kù)中,所以中間件不但能知道數(shù)據(jù)的變化,而且知道引起數(shù)據(jù)變化的SQL語(yǔ)句,根據(jù)SQL語(yǔ)句的類(lèi)型智能地采取不同的數(shù)據(jù)同步策略以保證數(shù)據(jù)同步成本的最小化:

1.數(shù)據(jù)條數(shù)很少,數(shù)據(jù)內(nèi)容也不大,則直接同步數(shù)據(jù)。

2.數(shù)據(jù)條數(shù)很少,但是里面包含大數(shù)據(jù)類(lèi)型,譬如文本,二進(jìn)制數(shù)據(jù)等,則先對(duì)數(shù)據(jù)進(jìn)行壓縮然后再

同步,從而減少網(wǎng)絡(luò)帶寬的占用和傳輸所用的時(shí)間。

3.數(shù)據(jù)條數(shù)好多,此時(shí)中間件會(huì)獲取造成數(shù)據(jù)變化的SQL語(yǔ)句,然后對(duì)SQL語(yǔ)句進(jìn)行解析,分析其

執(zhí)行計(jì)劃和執(zhí)行成本,并選擇是同步數(shù)據(jù)還是同步SQL語(yǔ)句到其他的數(shù)據(jù)庫(kù)中。在對(duì)表結(jié)構(gòu)進(jìn)行調(diào)整

或者批量更改數(shù)據(jù)的時(shí)候,這種同步策略十分有用。

MoebiusForSQLServer高級(jí)架構(gòu)

在高級(jí)架構(gòu)中,采用數(shù)據(jù)分區(qū)技術(shù),依據(jù)某種規(guī)則把數(shù)據(jù)分散到多個(gè)數(shù)據(jù)庫(kù)中。

數(shù)據(jù)為什么分區(qū)?

1.當(dāng)數(shù)據(jù)量很大的時(shí)候,即使服務(wù)器在沒(méi)有任何壓力的狀況下,某些繁雜的查詢(xún)操作都會(huì)十分緩慢,影響最終用戶的體驗(yàn)。

2.在大數(shù)據(jù)量下對(duì)數(shù)據(jù)庫(kù)的裝載與導(dǎo)出,備份與恢復(fù),結(jié)構(gòu)的調(diào)整,索引的調(diào)整等都會(huì)讓數(shù)據(jù)庫(kù)中止服

務(wù)或者高負(fù)荷運(yùn)轉(zhuǎn)很長(zhǎng)時(shí)間,影響數(shù)據(jù)庫(kù)的可用性和易管理性。3.面對(duì)這樣的應(yīng)用環(huán)境,僅僅依靠提升服務(wù)器的硬件配置是起不到作用的,比較好的方法是通過(guò)數(shù)據(jù)分

區(qū),把數(shù)據(jù)分成更小的部分來(lái)提高數(shù)據(jù)庫(kù)的可用性和易管理性。4.分區(qū)把各部分?jǐn)?shù)據(jù)放到不同的機(jī)器中,每次查詢(xún)可以由多個(gè)機(jī)器上的CPU、I/O來(lái)共同負(fù)載,通過(guò)

各節(jié)點(diǎn)并行處理數(shù)據(jù)來(lái)提高性能。

系統(tǒng)結(jié)構(gòu)

MoebiusForSQLServer高級(jí)架構(gòu)在結(jié)構(gòu)上分訪問(wèn)層數(shù)據(jù)庫(kù)和數(shù)據(jù)層數(shù)據(jù)庫(kù)兩部分。

訪問(wèn)層:訪問(wèn)層數(shù)據(jù)庫(kù)只有原來(lái)數(shù)據(jù)庫(kù)的結(jié)構(gòu)沒(méi)有數(shù)據(jù),處理提交上來(lái)的SQL語(yǔ)句并調(diào)度執(zhí)行。訪問(wèn)層數(shù)

據(jù)庫(kù)可以由多個(gè)機(jī)器來(lái)負(fù)載均衡。

數(shù)據(jù)層:數(shù)據(jù)層數(shù)據(jù)庫(kù)就是原來(lái)的數(shù)據(jù)庫(kù),但是可以有多個(gè)冗余對(duì)查詢(xún)進(jìn)行負(fù)載均衡,以提高整個(gè)系統(tǒng)

的性能,MoebiusForSQLServer保證多個(gè)數(shù)據(jù)庫(kù)的一致性;數(shù)據(jù)層數(shù)據(jù)庫(kù)不暴露給用戶和業(yè)

務(wù)程序,用戶和業(yè)務(wù)程序面對(duì)的是訪問(wèn)層數(shù)據(jù)庫(kù)。

通過(guò)訪問(wèn)層和數(shù)據(jù)層構(gòu)建出一個(gè)網(wǎng)格集群來(lái)實(shí)現(xiàn)集群的高可用性和負(fù)載均衡,訪問(wèn)層和數(shù)據(jù)層的數(shù)據(jù)庫(kù)是可以擴(kuò)展的。(每列中各節(jié)點(diǎn)的數(shù)據(jù)是一致的,每行構(gòu)成數(shù)據(jù)的全集;圖中數(shù)據(jù)數(shù)據(jù)層設(shè)計(jì)為5×2矩陣,在實(shí)際應(yīng)用中要依據(jù)業(yè)務(wù)的特點(diǎn)來(lái)劃分)。

如何分區(qū)?

MoebiusForSQLServer支持兩種分區(qū)方式:Hash分區(qū)和線性分區(qū)。

Hash分區(qū):是將表按某一字段的值均勻地分布到若干個(gè)指定分區(qū)中的一種分區(qū)方法。

優(yōu)點(diǎn):每個(gè)分區(qū)內(nèi)分派的數(shù)據(jù)比較平均,承載的壓力也就比較平均,機(jī)器能夠得到充分的利用。

缺點(diǎn):不易擴(kuò)展,假使擴(kuò)展新的分區(qū)會(huì)涉及到數(shù)據(jù)的重新分派,因此在設(shè)計(jì)的時(shí)候要提前規(guī)劃好。

MoebiusForSQLServer支持把多個(gè)分區(qū)數(shù)據(jù)放在一個(gè)機(jī)器上然后再根據(jù)壓力逐個(gè)的拆到新機(jī)器中去,這樣既可以保證了分區(qū)的規(guī)劃又不浪費(fèi)機(jī)器,實(shí)現(xiàn)了線性擴(kuò)展。

線性分區(qū):即范圍分區(qū),將表按某一字段的取值范圍進(jìn)行分區(qū),如按時(shí)間,每個(gè)月的數(shù)據(jù)在一個(gè)分區(qū)中。

優(yōu)點(diǎn):擴(kuò)展性能比較好,由于數(shù)據(jù)的增長(zhǎng)是有一定規(guī)律的。

缺點(diǎn):每個(gè)分區(qū)內(nèi)數(shù)據(jù)的壓力不是很平均,大部分業(yè)務(wù)都存在這種現(xiàn)象,越老的數(shù)據(jù)被訪問(wèn)的頻率越低,從而導(dǎo)致各機(jī)器面臨的壓力也不同,因此使機(jī)器的利用率不高。

MoebiusForSQLServer支持把多個(gè)分區(qū)數(shù)據(jù)放在一個(gè)機(jī)器上,所以可以通過(guò)新老分區(qū)的交替使用來(lái)提高機(jī)器的利用率。

分區(qū)操作在管理工具中很簡(jiǎn)單配置,首先設(shè)置分區(qū),接下來(lái)給每個(gè)表選擇分區(qū)并設(shè)置分區(qū)字段。(如下圖)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論