亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法及裝置與流程

文檔序號(hào):12463622閱讀:471來(lái)源:國(guó)知局
一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法及裝置與流程

本發(fā)明屬于數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,尤其是涉及一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法及裝置。



背景技術(shù):

分布式數(shù)據(jù)庫(kù)是指利用高速計(jì)算機(jī)網(wǎng)絡(luò)將物理上分散的多個(gè)數(shù)據(jù)存儲(chǔ)單元連接起來(lái)組成一個(gè)邏輯上統(tǒng)一的數(shù)據(jù)庫(kù)。分布式數(shù)據(jù)庫(kù)的基本思想是將原來(lái)集中式數(shù)據(jù)庫(kù)中的數(shù)據(jù)分散存儲(chǔ)到多個(gè)通過(guò)網(wǎng)絡(luò)連接的數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)上,以獲取更大的存儲(chǔ)容量和更高的并發(fā)訪問(wèn)量。近年來(lái),隨著數(shù)據(jù)量的高速增長(zhǎng),分布式數(shù)據(jù)庫(kù)技術(shù)也得到了快速的發(fā)展,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)開始從集中式模型向分布式架構(gòu)發(fā)展,基于關(guān)系型的分布式數(shù)據(jù)庫(kù)在保留了傳統(tǒng)數(shù)據(jù)庫(kù)的數(shù)據(jù)模型和基本特征下,從集中式存儲(chǔ)走向分布式存儲(chǔ),從集中式計(jì)算走向分布式計(jì)算。

在客戶的業(yè)務(wù)場(chǎng)景中,當(dāng)初始安裝集群時(shí),如果集群節(jié)點(diǎn)的硬件資源不對(duì)等,或者當(dāng)安裝完集群后需要進(jìn)行節(jié)點(diǎn)替換時(shí),當(dāng)替換的新節(jié)點(diǎn)和原有集群節(jié)點(diǎn)的硬件資源不對(duì)等時(shí),或者到進(jìn)行集群擴(kuò)容時(shí),新的擴(kuò)容的節(jié)點(diǎn)的硬件資源和原集群節(jié)點(diǎn)資源不對(duì)等時(shí),當(dāng)前版本的集群進(jìn)行數(shù)據(jù)分布時(shí)采用一致性的hash方式來(lái)分布數(shù)據(jù)時(shí)把節(jié)點(diǎn)對(duì)等看待,保證了節(jié)點(diǎn)數(shù)據(jù)是均勻的,但節(jié)點(diǎn)的硬件資源的不對(duì)等導(dǎo)致了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。目前市場(chǎng)上主流的分布式數(shù)據(jù)庫(kù)系統(tǒng)vertica,GreepPlum一般也是采用一致性的hash方式來(lái)分布集群中的數(shù)據(jù),經(jīng)過(guò)hash分布的表,在初始安裝,節(jié)點(diǎn)替換和擴(kuò)容時(shí),按照以上方式導(dǎo)致當(dāng)集群中的物理節(jié)點(diǎn)的硬件配置即使不同時(shí),采用一致性的hash方式來(lái)分布數(shù)據(jù)把節(jié)點(diǎn)對(duì)等看待,因此無(wú)論集群中硬件配置高的物理節(jié)點(diǎn),還是集群中硬件配置低的物理節(jié)點(diǎn)都分配到了基本相當(dāng)?shù)臄?shù)據(jù)量,帶來(lái)的問(wèn)題是硬件配置低的物理節(jié)點(diǎn)成為了系統(tǒng)性能的瓶頸。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供了一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法及裝置,以解決現(xiàn)有技術(shù)中集群節(jié)點(diǎn)的硬件資源的不對(duì)等導(dǎo)致了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。的技術(shù)問(wèn)題。

一方面,本發(fā)明實(shí)施例提供了一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法,包括:

在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息;

配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

進(jìn)一步的,所述方法還包括:

在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶。

進(jìn)一步的,所述方法還包括:

在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶。

更進(jìn)一步的,所述根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶,包括:

移動(dòng)變更哈希桶的節(jié)點(diǎn)的部分?jǐn)?shù)據(jù)至所述增加的節(jié)點(diǎn)。

另一方面,本發(fā)明實(shí)施例提供了一種分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布裝置,包括:

獲取單元,用于在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息;

分配單元,用于配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

進(jìn)一步的,所述裝置還包括:

調(diào)整單元,用于在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶。

進(jìn)一步的,所述裝置還包括:

再分配單元,用于在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶。

更進(jìn)一步的,所述再分配單元用于:

移動(dòng)變更哈希桶的節(jié)點(diǎn)的部分?jǐn)?shù)據(jù)至所述增加的節(jié)點(diǎn)。

本發(fā)明實(shí)施例提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法及裝置,通過(guò)根據(jù)分布式數(shù)據(jù)庫(kù)集群節(jié)點(diǎn)的硬件配置哈希地圖,并可靈活的調(diào)整節(jié)點(diǎn)哈希桶的數(shù)量,能夠保證高硬件資源的節(jié)點(diǎn)分配更多的數(shù)據(jù),避免了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明實(shí)施例一提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法的流程示意圖;

圖2是本發(fā)明實(shí)施例二提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法的流程示意圖;

圖3是本發(fā)明實(shí)施例三提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法的流程示意圖;

圖4是本發(fā)明實(shí)施例四提供的布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

實(shí)施例一

圖1為本發(fā)明實(shí)施例一提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布方法的流程圖,本實(shí)施例可適用于對(duì)集群中的數(shù)據(jù)進(jìn)行分布的情況,該方法可以由分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布裝置來(lái)執(zhí)行,該裝置可由軟件/硬件方式實(shí)現(xiàn),并可集成于分布式數(shù)據(jù)庫(kù)系統(tǒng)的管理節(jié)點(diǎn)中。

參見圖1,所述分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布的方法,包括:

S110,在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息。

分布式數(shù)據(jù)庫(kù)系統(tǒng)通常使用較小的計(jì)算機(jī)系統(tǒng),每臺(tái)計(jì)算機(jī)可單獨(dú)放在一個(gè)地方,每臺(tái)計(jì)算機(jī)中都可能有DBMS的一份完整拷貝副本,或者部分拷貝副本,并具有自己局部的數(shù)據(jù)庫(kù)。每個(gè)計(jì)算機(jī)系統(tǒng)的硬件配置可能相同,也可能不同。在本實(shí)施例中,可以將分布式數(shù)據(jù)庫(kù)系統(tǒng)的節(jié)點(diǎn)分為三類,分別為低硬件資源的節(jié)點(diǎn),中硬件資源的節(jié)點(diǎn),高硬件資源的節(jié)點(diǎn)。在創(chuàng)建分布式數(shù)據(jù)庫(kù)時(shí),對(duì)集群中每個(gè)節(jié)點(diǎn)進(jìn)行安裝,在進(jìn)行安裝時(shí),可以通過(guò)網(wǎng)絡(luò)和相應(yīng)的指令獲取每個(gè)節(jié)點(diǎn)的硬件信息。所述硬件信息可以包括:CPU頻率、內(nèi)存大小和硬盤大小等。

S120,配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

在節(jié)點(diǎn)硬件信息缺省情況下,各個(gè)節(jié)點(diǎn)所分配到的hash桶是均勻的,因此保證了各個(gè)節(jié)點(diǎn)所分配的數(shù)據(jù)是均勻的,但如果節(jié)點(diǎn)本身的硬件資源不均等時(shí),如果數(shù)據(jù)分配是均勻的,反而造成了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。在集群節(jié)點(diǎn)安裝完成后,配置集群的hashmap。高硬件資源的節(jié)點(diǎn)分配更多的hash桶,其次是中硬件資源的節(jié)點(diǎn),最后是低硬件資源的節(jié)點(diǎn),按此方式自動(dòng)產(chǎn)生hashmap。其中,hash map是hash值和節(jié)點(diǎn)的對(duì)應(yīng)關(guān)系。哈希桶通常容量是固定值,即能處理固定次數(shù)的沖突。由此可以看出,哈希桶的容量與節(jié)點(diǎn)運(yùn)算處理能力相關(guān)。所以,需要根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。當(dāng)數(shù)據(jù)進(jìn)行分布時(shí),能夠保證高硬件資源的節(jié)點(diǎn)分配更多的數(shù)據(jù),其次是中硬件資源的節(jié)點(diǎn),最后是低硬件資源的節(jié)點(diǎn),按照該種方式避免了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。缺省情況下,各個(gè)節(jié)點(diǎn)所分配到的hash桶是均勻的。根據(jù)hash map對(duì)數(shù)據(jù)進(jìn)行分布。即在數(shù)據(jù)進(jìn)行分布時(shí),首先計(jì)算數(shù)據(jù)的hash值,根據(jù)hashmap中的hash值取得該hash值所對(duì)應(yīng)的節(jié)點(diǎn)進(jìn)行數(shù)據(jù)的分布。

本實(shí)施例通過(guò)根據(jù)分布式數(shù)據(jù)庫(kù)集群節(jié)點(diǎn)的硬件配置哈希地圖,并可靈活的調(diào)整節(jié)點(diǎn)哈希桶的數(shù)量,能夠保證高硬件資源的節(jié)點(diǎn)分配更多的數(shù)據(jù),避免了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。

實(shí)施例二

圖2是本發(fā)明實(shí)施例二提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布的方法的流程示意圖,本發(fā)明實(shí)施例以上述實(shí)施例為基礎(chǔ),進(jìn)一步的,所述方法還包括:在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶。

參見圖2,所述分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布的方法,包括:

S210,在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息。

S220,配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

S230,在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶。

集群中的硬件資源進(jìn)行調(diào)整時(shí),可以調(diào)整該hashmap中該節(jié)點(diǎn)所對(duì)應(yīng)的hash桶,并對(duì)調(diào)整所涉及到的hash桶所對(duì)應(yīng)的節(jié)點(diǎn)的數(shù)據(jù)重新進(jìn)行分布

本實(shí)施例通過(guò)增加如下步驟:在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶??梢栽诩褐械挠布Y源進(jìn)行調(diào)整時(shí),可以調(diào)整該hashmap中該節(jié)點(diǎn)所對(duì)應(yīng)的hash桶,并對(duì)調(diào)整所涉及到的hash桶所對(duì)應(yīng)的節(jié)點(diǎn)的數(shù)據(jù)重新進(jìn)行分布

實(shí)施例三

圖3是本發(fā)明實(shí)施例二提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布的方法的流程示意圖,本發(fā)明實(shí)施例以上述實(shí)施例為基礎(chǔ),進(jìn)一步的,所述方法還包括:在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶。

參見圖3,所述分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布的方法,包括:

S310,在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息。

S320,配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

S330,在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶。

在所述集群進(jìn)行擴(kuò)容時(shí),常規(guī)情況下新擴(kuò)容的節(jié)點(diǎn)的硬件資源一般高于原集群中的節(jié)點(diǎn),因此對(duì)擴(kuò)容后的集群可以建立新的hashmap,新hashmap中,新擴(kuò)容的節(jié)點(diǎn)可以分配更多的hash桶,來(lái)達(dá)到新節(jié)點(diǎn)可以分布更多數(shù)據(jù)的目的。

本實(shí)施例通過(guò)增加如下步驟:在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶??梢允沟眯聰U(kuò)容的節(jié)點(diǎn)可以分配更多的hash桶,來(lái)達(dá)到新節(jié)點(diǎn)可以分布更多數(shù)據(jù)的目的。

在本實(shí)施例的一個(gè)優(yōu)選實(shí)施方式中,將根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶,具體優(yōu)化為:移動(dòng)變更哈希桶的節(jié)點(diǎn)的部分?jǐn)?shù)據(jù)至所述增加的節(jié)點(diǎn)。重新調(diào)整hashmap后,對(duì)涉及到hash桶變更后的集群中原有節(jié)點(diǎn)進(jìn)行數(shù)據(jù)重分布,移動(dòng)hash桶變更的節(jié)點(diǎn)的部分?jǐn)?shù)據(jù)到新擴(kuò)容的節(jié)點(diǎn)上??梢员WC新擴(kuò)容的節(jié)點(diǎn)分布更多的數(shù)據(jù)。

實(shí)施例四

圖4是本發(fā)明實(shí)施例四提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布裝置的結(jié)構(gòu)示意圖,如圖4所示,所述裝置包括:

獲取單元410,用于在集群節(jié)點(diǎn)安裝時(shí),獲取所述節(jié)點(diǎn)的硬件信息;

分配單元420,用于配置所述集群的哈希地圖Hash Map,并根據(jù)所述節(jié)點(diǎn)的硬件信息為每個(gè)節(jié)點(diǎn)分配哈希桶。

進(jìn)一步的,所述裝置還包括:

調(diào)整單元,用于在所述節(jié)點(diǎn)的硬件配置發(fā)生變化時(shí),根據(jù)所述變化調(diào)整所述節(jié)點(diǎn)的哈希桶。

進(jìn)一步的,所述裝置還包括:

再分配單元,用于在所述集群增加節(jié)點(diǎn)時(shí),建立新的Hash Map,并根據(jù)所述增加的節(jié)點(diǎn)的硬件信息分配哈希桶。

更進(jìn)一步的,所述再分配單元用于:

移動(dòng)變更哈希桶的節(jié)點(diǎn)的部分?jǐn)?shù)據(jù)至所述增加的節(jié)點(diǎn)。

本實(shí)施例提供的分布式數(shù)據(jù)庫(kù)集群數(shù)據(jù)的分布裝置,通過(guò)根據(jù)分布式數(shù)據(jù)庫(kù)集群節(jié)點(diǎn)的硬件配置哈希地圖,并可靈活的調(diào)整節(jié)點(diǎn)哈希桶的數(shù)量,能夠保證高硬件資源的節(jié)點(diǎn)分配更多的數(shù)據(jù),避免了節(jié)點(diǎn)運(yùn)算的木桶效應(yīng)。

本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。

最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1