專利名稱:一種海量數(shù)據(jù)自動放置裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明屬于互聯(lián)網(wǎng)通信領(lǐng)域,尤其涉及一種海量數(shù)據(jù)自動放置裝置和方法。
背景技術(shù):
隨著數(shù)據(jù)的爆炸性增長,存儲海量數(shù)據(jù)的集群應(yīng)運而生。因為集群中存儲的數(shù)據(jù)量很大,有的已達PB級,同一時刻可能會有大量的數(shù)據(jù)訪問。因此,數(shù)據(jù)的存放位置是否合理,直接影響到數(shù)據(jù)的訪問延遲?,F(xiàn)在的集群,通過將多臺普通服務(wù)器協(xié)作服務(wù),實現(xiàn)超級計算機的功能。集群一般都有在線擴展的能力,即可以通過添加新節(jié)點的方式存儲數(shù)據(jù),因此其擴展能力很強大。但是,新加入的節(jié)點的訪問性能往往與原有節(jié)點的訪問性能有差別,這種差別可能是由于存儲技術(shù)的發(fā)展,使得集群能夠使用更快的硬盤用來存儲數(shù)據(jù),也可能是因為使用了同樣規(guī)格的硬盤,但是原有的硬盤由于使用時間較長,訪問性能已經(jīng)比不上新硬盤的性能。于是,集群中節(jié)點在一段時間之后,其性能就會不完全一致。另外,由于集群的規(guī)??赡芎艽?,完全一樣的配置往往比較難以實現(xiàn),也有可能出現(xiàn)配置不一的情形。因此,集群中的各服務(wù)器節(jié)點訪問性能不一致,是個比較現(xiàn)實的問題,不容忽視。集群中的節(jié)點訪問性能不一,則必然有高有低,但是集群更多的是關(guān)注于負載均衡,忽略這種性能不一的問題,這就使得數(shù)據(jù)的放置使用最簡單的平均策略,很少考慮數(shù)據(jù)本身的特性。以hadoop集群為例,集群將文件分成固定大小的塊,然后將塊存放在多個節(jié)點上。在放置數(shù)據(jù)塊時,會考慮到客戶端與目標(biāo)節(jié)點的距離以及目標(biāo)節(jié)點的負載等情況,主要是為了減少對網(wǎng)絡(luò)帶寬的消耗和保持節(jié)點間的負載均衡。但是,對于集群中的節(jié)點,尤其是訪問性能不一的節(jié)點,卻沒有作有效的區(qū)分,反而是同等對待。而且,數(shù)據(jù)的訪問頻率也不一致,工業(yè)研究表明,只有20%的數(shù)據(jù)是活躍的,而剩余80%的數(shù)據(jù)是不活躍的,即某一時間段內(nèi)被大量訪問的只是少量數(shù)據(jù)。而hadoop集群并沒有對這些數(shù)據(jù)進行有效識別,更多的是,集群將所有的數(shù)據(jù)同等對待,對所有的服務(wù)器節(jié)點也是同等對待,將數(shù)據(jù)存放于節(jié)點上的時候,也只是考慮到帶寬與負載等因素,最后在數(shù)據(jù)讀取的時候,只是考慮了帶寬的因素(一個數(shù)據(jù)塊會有多個副本供選擇)??梢哉f,集群在存放數(shù)據(jù)和讀取數(shù)據(jù)的時候,除了考慮帶寬等因素外,其實使用的是隨機策略。而這種隨機策略,使得集群的數(shù)據(jù)訪問性能處于不穩(wěn)定的狀態(tài),尤其是各個服務(wù)器節(jié)點訪問性能不一的時候。鑒于集群中的服務(wù)器節(jié)點在很多情況下可能處于訪問性能不一的情況下,且數(shù)據(jù)的訪問特性不一致,因此有必要采用一種比較合理的數(shù)據(jù)放置策略,使得數(shù)據(jù)能在合適的節(jié)點上存放,使得系統(tǒng)在處理活躍數(shù)據(jù)時的效率提高,最終使得數(shù)據(jù)的訪問性能提高,而整體的訪問延遲降低。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種海量數(shù)據(jù)自動放置裝置和方法,旨在解決當(dāng)前集群在節(jié)點訪問性能不同且數(shù)據(jù)的訪問特性不一致時,無法使數(shù)據(jù)在合適的節(jié)點上存放,導(dǎo)致數(shù)據(jù)的訪問性能不高的問題。為此,本發(fā)明實施例提供了如下技術(shù)方案一種海量數(shù)據(jù)自動放置裝置,包括節(jié)點識別模塊,用于識別不同訪問性能的節(jié)點,并將其劃分為不同的層次;數(shù)據(jù)甄別模塊,用于根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值;匹配模塊,用于將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上;調(diào)整模塊,用于根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。本發(fā)明實施例還提供了一種海量數(shù)據(jù)自動放置方法,包括識別不同訪問性能的節(jié)點,并將其劃分為不同的層次;根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值;將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上;根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。與現(xiàn)有技術(shù)相比,本發(fā)明的實施例具有如下優(yōu)點本發(fā)明實施例通過識別不同訪問性能的節(jié)點,并將其劃分為不同的層次,根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值,將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上,并根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。使得活躍數(shù)據(jù)總是存放于層次高的節(jié)點上,系統(tǒng)在處理數(shù)據(jù)訪問請求時的操作大部分使用的是優(yōu)質(zhì)存儲介質(zhì),使得數(shù)據(jù)的訪問性能提高,整體的訪問延遲降低。
圖1是本發(fā)明實施例提供的海量數(shù)據(jù)自動放置方法的方法流程圖;圖2是本發(fā)明實施例提供的海量數(shù)據(jù)自動放置裝置的結(jié)構(gòu)圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖1是本發(fā)明實施例提供的海量數(shù)據(jù)自動放置方法的方法流程圖,為了便于說明,僅不出了與本發(fā)明實施例相關(guān)的部分。如圖1所示,該方法包括以下步驟步驟101,識別不同訪問性能的節(jié)點,并將其劃分為不同的層次。具體的,識別不同訪問性能的節(jié)點,可以是根據(jù)不同的主機名標(biāo)識特征進行的。優(yōu)選的,這些標(biāo)識由管理員根據(jù)節(jié)點情況提前設(shè)定好。步驟102,根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值。具體的,根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),可以是訪問次數(shù)、訪問時間,以及數(shù)據(jù)大小中的一項或多項。優(yōu)選的,如果是新寫入的數(shù)據(jù),則默認有最高的特性值。步驟103,將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上。
具體的,將數(shù)據(jù)依特性值高低存放在相應(yīng)的節(jié)點上時,以節(jié)點的剩余空間為依據(jù)。步驟104,根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。具體的,根據(jù)數(shù)據(jù)與節(jié)點的匹配情況對原有的數(shù)據(jù)位置進行調(diào)整時,可以周期性地檢查數(shù)據(jù)與節(jié)點的匹配情況。若匹配有誤,如特性值高的數(shù)據(jù)存放于性能差的節(jié)點上,此時就調(diào)用調(diào)整模塊,對原有的數(shù)據(jù)位置進行調(diào)整。使得數(shù)據(jù)越熱,其所在的存儲層次越高。具體的,所述檢查周期是一個根據(jù)系統(tǒng)需要確定的固定時間段。優(yōu)選的,周期可以選取10小時,至3天之間的任意一個值?;谙嗤臉?gòu)思,本發(fā)明實施例還提供一種海量數(shù)據(jù)自動放置裝置,如圖2所示,該裝置包括節(jié)點識別模塊201,用于識別不同訪問性能的節(jié)點,并將其劃分為不同的層次。具體的,節(jié)點識別模塊可以根據(jù)不同的主機名標(biāo)識特征,識別不同訪問性能的節(jié)點。優(yōu)選的,這些標(biāo)識由管理員根據(jù)節(jié)點情況提前設(shè)定好。數(shù)據(jù)甄別模塊202,用于根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值。具體的,數(shù)據(jù)甄別模塊根據(jù)數(shù)據(jù)訪問操作得到的參數(shù),可以是訪問次數(shù)、訪問時間,以及數(shù)據(jù)大小中的一項或多項。優(yōu)選的,如果是新寫入的數(shù)據(jù),則默認有最高的特性值。匹配模塊203,用于將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上。具體的,匹配模塊將數(shù)據(jù)依照特性值高低存放在相應(yīng)的節(jié)點上時,以節(jié)點的剩余空間為依據(jù)。調(diào)整模塊204,用于根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。具體的,調(diào)整模塊根據(jù)數(shù)據(jù)與節(jié)點的匹配情況對原有的數(shù)據(jù)位置進行調(diào)整時,周期性地檢查數(shù)據(jù)與節(jié)點的匹配情況。若匹配有誤,如特性值高的數(shù)據(jù)存放于性能差的節(jié)點上,此時就調(diào)用調(diào)整模塊,對原有的數(shù)據(jù)位置進行調(diào)整。使得數(shù)據(jù)越熱,其所在的存儲層次越聞。具體的,所述檢查周期是一個根據(jù)系統(tǒng)需要確定的固定時間段。優(yōu)選的,周期可以選取10小時,至3天之間的任意一個值。本發(fā)明實施例通過識別不同訪問性能的節(jié)點,并將其劃分為不同的層次,根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值,將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上,并根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。使得活躍數(shù)據(jù)總是存放于層次高的節(jié)點上,系統(tǒng)在處理數(shù)據(jù)訪問請求時的操作大部分使用的是優(yōu)質(zhì)存儲介質(zhì),使得數(shù)據(jù)的訪問性能提高,整體的訪問延遲降低。本領(lǐng)域技術(shù)人員可以理解實施例中的裝置中的模塊可以按照實施例描述進行分布于實施例的裝置中,也可以進行相應(yīng)變化位于不同于本實施例的一個或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機,個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。以上所述僅是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應(yīng)視本發(fā)明的保護范圍。
權(quán)利要求
1.一種海量數(shù)據(jù)自動放置裝置,其特征在于,所述裝置包括: 節(jié)點識別模塊,用于識別不同訪問性能的節(jié)點,并將其劃分為不同的層次; 數(shù)據(jù)甄別模塊,用于根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值; 匹配模塊,用于將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上; 調(diào)整模塊,用于根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。
2.如權(quán)利要求1所述的海量數(shù)據(jù)自動放置裝置,其特征在于,所述節(jié)點識別模塊,通過主機名標(biāo)識特征,識別不同訪問性能的節(jié)點。
3.如權(quán)利要求1或2所述的海量數(shù)據(jù)自動放置裝置,其特征在于,所述數(shù)據(jù)甄別模塊根據(jù)數(shù)據(jù)訪問操作得到的參數(shù),可以是訪問次數(shù)、訪問時間,以及數(shù)據(jù)大小中的一項或多項。
4.如權(quán)利要求1或2所述的海量數(shù)據(jù)自動放置裝置,其特征在于,所述匹配模塊將數(shù)據(jù)依照特性值高低存放在相應(yīng)的節(jié)點上時,以節(jié)點的剩余空間為依據(jù)。
5.如權(quán)利要求1或2所述的海量數(shù)據(jù)自動放置裝置,其特征在于,所述調(diào)整模塊周期性地檢查數(shù)據(jù)與節(jié)點的匹配情況。
6.一種海量數(shù)據(jù)自動放置方法,其特征在于,所述方法包括: 識別不同訪問性能的節(jié)點,并將其劃分為不同的層次; 根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值; 將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上; 根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。
7.如權(quán)利要求6所述的海量數(shù)據(jù)自動放置方法,其特征在于,通過主機名標(biāo)識特征,識別不同訪問性能的節(jié)點。
8.如權(quán)利要求6或7所述的海量數(shù)據(jù)自動放置方法,其特征在于,所述根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),可以是訪問次數(shù)、訪問時間,以及數(shù)據(jù)大小中的一項或多項。
9.如權(quán)利要求6或7所述的海量數(shù)據(jù)自動放置方法,其特征在于,所述將數(shù)據(jù)依特性值高低存放在相應(yīng)的節(jié)點上時,以節(jié)點的剩余空間為依據(jù)。
10.如權(quán)利要求6或7所述的海量數(shù)據(jù)自動放置方法,其特征在于,所述根據(jù)數(shù)據(jù)與節(jié)點的匹配情況對原有的數(shù)據(jù)位置進行調(diào)整時,可以周期性地檢查數(shù)據(jù)與節(jié)點的匹配情況。
全文摘要
本發(fā)明適用于互聯(lián)網(wǎng)通信領(lǐng)域,提供了一種海量數(shù)據(jù)自動放置裝置,所述裝置包括節(jié)點識別模塊,用于識別不同訪問性能的節(jié)點,并將其劃分為不同的層次;數(shù)據(jù)甄別模塊,用于根據(jù)數(shù)據(jù)的訪問操作得到的參數(shù),計算出數(shù)據(jù)的特性值;匹配模塊,用于將數(shù)據(jù)依照特性值高低,存放在相應(yīng)的節(jié)點上;調(diào)整模塊,用于根據(jù)數(shù)據(jù)與節(jié)點的匹配情況,對原有的數(shù)據(jù)位置進行調(diào)整。本發(fā)明使得活躍數(shù)據(jù)總是存放于層次高的節(jié)點上,系統(tǒng)在處理數(shù)據(jù)訪問請求時的操作大部分使用的是優(yōu)質(zhì)存儲介質(zhì),使得數(shù)據(jù)的訪問性能提高,整體的訪問延遲降低。
文檔編號G06F17/30GK103077221SQ20121059016
公開日2013年5月1日 申請日期2012年12月29日 優(yōu)先權(quán)日2012年12月29日
發(fā)明者張森林, 馮圣中 申請人:深圳先進技術(shù)研究院