• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      數(shù)據(jù)庫集群研究中的一致性哈希算法分析

      2016-01-05 10:42:22劉春穎張曉芬悅沈陽師范大學(xué)遼寧沈陽110034
      科技傳播 2015年23期
      關(guān)鍵詞:哈希分區(qū)一致性

      劉春穎,張曉芬,張 悅沈陽師范大學(xué),遼寧沈陽 110034

      數(shù)據(jù)庫集群研究中的一致性哈希算法分析

      劉春穎,張曉芬,張悅
      沈陽師范大學(xué),遼寧沈陽110034

      為了提高數(shù)據(jù)的運(yùn)行速度以及運(yùn)行的可靠性和安全性,需要設(shè)置合理的數(shù)據(jù)劃分方法,并將一致性哈希算法運(yùn)用到數(shù)據(jù)庫集群研究中。本文分析了一致性哈希算法在數(shù)據(jù)庫集群研究中的具體應(yīng)用方法,并設(shè)計(jì)了具體的數(shù)據(jù)劃分方案,為后期的數(shù)據(jù)研究工作提供參考和借鑒。

      數(shù)據(jù)庫集群研究;一致性哈希算法;數(shù)據(jù)劃分

      由于數(shù)據(jù)庫中的數(shù)據(jù)信息分布并儲(chǔ)存在多個(gè)節(jié)點(diǎn)上,因此,為了提高系統(tǒng)運(yùn)行的性能以及數(shù)據(jù)處理的速度,要將數(shù)據(jù)庫中所有的數(shù)據(jù)進(jìn)行科學(xué)的劃分,并提高其分布的合理性。在進(jìn)行數(shù)據(jù)劃分的過程中,要考慮到數(shù)據(jù)訪問和處理的性能以及數(shù)據(jù)增長和集群的可擴(kuò)展性,進(jìn)而在確保其運(yùn)行性能的情況下降低運(yùn)行成本。而哈希算法是較為常見且運(yùn)用十分廣泛的數(shù)據(jù)分布技術(shù),下文對(duì)其進(jìn)行詳細(xì)的分析[1]。

      1 一致性哈希算法的工作方法

      一致性哈希算法的工作方法大概可以分為兩個(gè)步驟:第一,通過求模運(yùn)算來計(jì)算儲(chǔ)存節(jié)點(diǎn)上的哈希值,在計(jì)算過程中,可以將儲(chǔ)存空間假設(shè)成一個(gè)環(huán),并將所有的儲(chǔ)存節(jié)點(diǎn)均勻的分布在環(huán)上,這樣的話所有的節(jié)點(diǎn)就都擁有了一個(gè)哈希值。第二,應(yīng)用哈希算法對(duì)第一步的數(shù)據(jù)進(jìn)行計(jì)算,然后按照順時(shí)針的方向?qū)⒂?jì)算出來的結(jié)果映射到離它最近的節(jié)點(diǎn)上去。即使某個(gè)節(jié)點(diǎn)出現(xiàn)了故障導(dǎo)致離線,也能減少對(duì)其他節(jié)點(diǎn)的影響。而當(dāng)需要在兩個(gè)節(jié)點(diǎn)之間增加一個(gè)節(jié)點(diǎn)時(shí),所產(chǎn)生的影響也僅僅存在于兩個(gè)節(jié)點(diǎn)之間的位置。因此,通過一致性哈希算法,對(duì)節(jié)點(diǎn)進(jìn)行分布和計(jì)算可以有效提高系統(tǒng)運(yùn)行的穩(wěn)定性和可靠性。

      2 一致性哈希算法的應(yīng)用優(yōu)勢(shì)

      一致性哈希算法區(qū)分于傳統(tǒng)哈希算法,也是在簡單哈希算法的基礎(chǔ)上進(jìn)行改進(jìn),其應(yīng)用優(yōu)勢(shì)可以從以下幾點(diǎn)進(jìn)行分析:第一,改進(jìn)了傳統(tǒng)哈希算法中需要增刪節(jié)點(diǎn)的麻煩,提高了系統(tǒng)更新的效率,并避免在增刪節(jié)點(diǎn)過程中對(duì)其它節(jié)點(diǎn)造成影響。同時(shí)節(jié)省傳統(tǒng)哈希算法中進(jìn)行數(shù)據(jù)移動(dòng)的開銷,降低了系統(tǒng)運(yùn)行的成本。第二,增強(qiáng)了系統(tǒng)的平衡性。由于數(shù)據(jù)庫中的每個(gè)點(diǎn)都有其自身的性能,有些性能較強(qiáng),有些則較差,通過一致性哈希算法,可以對(duì)其節(jié)點(diǎn)性能進(jìn)行科學(xué)分析,進(jìn)而提高節(jié)點(diǎn)分布的合理性。第三,能夠提高數(shù)據(jù)增長時(shí)的系統(tǒng)運(yùn)行速度。當(dāng)數(shù)據(jù)庫內(nèi)的數(shù)據(jù)出現(xiàn)持續(xù)增長狀態(tài)時(shí),對(duì)系統(tǒng)的運(yùn)行壓力比較大,很容易因?yàn)橥蝗坏臄?shù)據(jù)數(shù)量增加而導(dǎo)致其運(yùn)行速度遲緩或者直接造成癱瘓。而通過一致性哈希算法的應(yīng)用,能夠?qū)瑪?shù)據(jù)較多的虛擬節(jié)點(diǎn)進(jìn)行分類,并可以在服務(wù)器之間調(diào)整期儲(chǔ)存分布情況,這樣就可以提高系統(tǒng)服務(wù)器對(duì)于數(shù)據(jù)增長的適應(yīng)性,避免造成運(yùn)行不暢[3]。一致性哈希算法目前主要應(yīng)用于分布式Key-Value存儲(chǔ)系統(tǒng)中,其作用是存儲(chǔ)高并發(fā)的事務(wù)性數(shù)據(jù),并根據(jù)Key值的不同,存放在不同服務(wù)器中,比如一些大型網(wǎng)站通常會(huì)把一些訪問頻率較高但是變化頻率較低的系統(tǒng)緩存頁面儲(chǔ)存在Key-Value系統(tǒng)中,以降低服務(wù)器的運(yùn)行壓力和后臺(tái)的訪問壓力,進(jìn)而提高其運(yùn)行速度和運(yùn)行的穩(wěn)定性。

      3 一致性哈希算法在數(shù)據(jù)庫集群研究中的應(yīng)用分析

      對(duì)于數(shù)據(jù)庫的集群研究可以根據(jù)其研究目的以及數(shù)據(jù)特征等劃分為不同的研究形式,其中對(duì)于結(jié)構(gòu)化數(shù)據(jù)的分析稱為分析性數(shù)據(jù)庫。而隨著現(xiàn)代化信息化程度的提高,以及基于智能平臺(tái)的新媒體的不斷深化和拓展,導(dǎo)致結(jié)構(gòu)化數(shù)據(jù)的產(chǎn)生速度不斷加快,進(jìn)而提高了對(duì)于數(shù)據(jù)的分析工作難度。在這種情況下,傳統(tǒng)的數(shù)據(jù)庫分析方法已經(jīng)不能夠滿足其數(shù)據(jù)數(shù)量和數(shù)據(jù)增長的需求,而針對(duì)大規(guī)模數(shù)據(jù)分析的并行計(jì)算和集群系統(tǒng)應(yīng)運(yùn)而生(以下并稱為并行分析型數(shù)據(jù)庫集群),提高了數(shù)據(jù)分析的擴(kuò)展性和可靠性,并節(jié)省了分析成本。以下就對(duì)一致性哈希算法在并行分析型數(shù)據(jù)庫集群中的應(yīng)用進(jìn)行分析。

      3.1數(shù)據(jù)的基本劃分方法

      在對(duì)數(shù)據(jù)進(jìn)行劃分時(shí),可以選擇一個(gè)分區(qū)鍵,分區(qū)鍵和元組之間形成類似Key-Value的關(guān)系,并利用哈希函數(shù)計(jì)算出每個(gè)元組在分區(qū)鍵上的哈希值并作為新的分區(qū)鍵。如果分區(qū)鍵是基本型數(shù)值,可以將原來的分區(qū)鍵劃分為新的分區(qū)鍵,稱其為“數(shù)值型分區(qū)鍵”,并稱數(shù)值型分區(qū)鍵的值空間“分區(qū)空間”。指定數(shù)值型分區(qū)鍵之后,即可將數(shù)值型分區(qū)空間劃分為若干的分區(qū)。

      3.2數(shù)據(jù)劃分方案設(shè)計(jì)

      HDSF是目前數(shù)據(jù)量較多情況下實(shí)用性很強(qiáng)的一種存儲(chǔ)系統(tǒng),能夠保證存儲(chǔ)數(shù)據(jù)的容差性和可擴(kuò)展性。而MapReduce能夠很好的完成數(shù)據(jù)進(jìn)入存儲(chǔ)引擎之前的抽

      取、轉(zhuǎn)換格式和加載的任務(wù)。因此,將利用這兩種系統(tǒng)完成對(duì)數(shù)據(jù)劃分方案的設(shè)計(jì)。具體劃分方案可以分為以下幾個(gè)流程:第一,輸人劃分所需的參數(shù)。輸入的參數(shù)需要包括具體的采樣數(shù)和分區(qū)數(shù)。并用a表示在HDFS上的數(shù)據(jù)表文件中總共采集了多少行參數(shù)作為樣本,A表示數(shù)據(jù)劃分最終要生成多少個(gè)分區(qū),同時(shí)保證每個(gè)數(shù)據(jù)塊的大小要基本均衡,最終這些數(shù)據(jù)塊將會(huì)被導(dǎo)入到集群的存儲(chǔ)系統(tǒng)中。第二,采樣生成Partition File。對(duì)于采集到的每個(gè)行,獲取或計(jì)算出其數(shù)值型分區(qū)鍵。采樣到a個(gè)分區(qū)鍵后,對(duì)其進(jìn)行排序,并按照這a個(gè)分區(qū)鍵的值將分區(qū)空間劃分為A段,每段中包含的分區(qū)鍵個(gè)數(shù)基本相同,將劃分后的A一1個(gè)分區(qū)端點(diǎn)寫入到Partition File。第三,啟動(dòng)一個(gè)MapReduce Job對(duì)數(shù)據(jù)表進(jìn)行一致性哈希劃分。

      3.3.1測(cè)試方法

      在Presto中DDL部分的功能依賴于Hive的實(shí)現(xiàn),所支持的數(shù)據(jù)劃分和Hive是一致的。但是Hive不能直接對(duì)哈希劃分哈范圍互粉提供支持,因此可以指定一個(gè)字段作為分區(qū)鍵,導(dǎo)入數(shù)據(jù)時(shí)可以將分區(qū)鍵上值相同的元組導(dǎo)入一個(gè)分區(qū)中,相當(dāng)于提供了對(duì)列表劃分的支持。對(duì)于導(dǎo)入同一分區(qū)的數(shù)據(jù),可以按照某個(gè)字段的值進(jìn)行聚簇和排序。

      3.3.2測(cè)試結(jié)果

      采用TPC-DS作為測(cè)試基準(zhǔn),并利用其生成器生成了100GB數(shù)據(jù)集,同時(shí)把其中最大的一張事實(shí)表作為測(cè)試數(shù)據(jù),數(shù)據(jù)量達(dá)到38.15GB。在實(shí)際的測(cè)試過程中,對(duì)Hive/Presto和哈希數(shù)據(jù)劃分方法進(jìn)行對(duì)比。從測(cè)試結(jié)果可以看出,哈希數(shù)據(jù)劃分方法的性能更加良好,并且當(dāng)數(shù)據(jù)集群規(guī)模增加時(shí),哈希劃分方法的適應(yīng)性和擴(kuò)展性都表現(xiàn)得比較優(yōu)良[4]。

      4 結(jié)論

      本文通過分析一致性哈希算法的具體工作原理以及應(yīng)用優(yōu)勢(shì),并以并行分析性數(shù)據(jù)庫集群為例,分析了一致性哈希算法的實(shí)際應(yīng)用效果,并建立了具體的應(yīng)用方案,通過對(duì)方案的測(cè)試可以發(fā)現(xiàn),一致性哈希算法的應(yīng)用效果良好,能夠提高數(shù)據(jù)劃分的速度并保持其擴(kuò)展性能,有利于維護(hù)系統(tǒng)的穩(wěn)定性和安全性。

      [1]顏吉強(qiáng).數(shù)據(jù)庫集群中的數(shù)據(jù)分布策略研究[J].煤炭技術(shù),2013,32(4):154-155.

      [2]姚墨涵,謝紅蘞.一致性哈希算法在分布式系統(tǒng)中的應(yīng)用[J].電腦開發(fā)與應(yīng)用,2012(7):1-2.

      [3]楊或劍,林波.分布式存儲(chǔ)系統(tǒng)中一致性哈希算法的研究[J].電腦知識(shí)與技術(shù),2011(22):5295.

      [4]趙飛,蘇忠.一致性哈希算法在數(shù)據(jù)庫集群上的拓展應(yīng)用[J].成都信息工程學(xué)院學(xué)報(bào).2015,30(1):54.

      TP3

      A

      1674-6708(2015)152-0068-01

      劉春穎,講師,碩士,研究方向:計(jì)算機(jī)科學(xué)與技術(shù)

      張曉芬,副教授,研究生,研究方向:計(jì)算機(jī)科學(xué)與技術(shù)

      張悅,碩士,副教授,研究方向:數(shù)據(jù)挖掘,LSBN

      猜你喜歡
      哈希分區(qū)一致性
      關(guān)注減污降碳協(xié)同的一致性和整體性
      公民與法治(2022年5期)2022-07-29 00:47:28
      上海實(shí)施“分區(qū)封控”
      注重教、學(xué)、評(píng)一致性 提高一輪復(fù)習(xí)效率
      IOl-master 700和Pentacam測(cè)量Kappa角一致性分析
      浪莎 分區(qū)而治
      基于OpenCV與均值哈希算法的人臉相似識(shí)別系統(tǒng)
      基于事件觸發(fā)的多智能體輸入飽和一致性控制
      基于維度分解的哈希多維快速流分類算法
      基于SAGA聚類分析的無功電壓控制分區(qū)
      基于多種群遺傳改進(jìn)FCM的無功/電壓控制分區(qū)
      秦皇岛市| 永宁县| 平武县| 神木县| 曲松县| 金门县| 外汇| 巴彦淖尔市| 依兰县| 延津县| 东乡| 湘潭县| 松滋市| 香格里拉县| 西藏| 临西县| 郎溪县| 禄劝| 峨眉山市| 兴文县| 曲靖市| 龙川县| 乌什县| 清远市| 望谟县| 江源县| 南丹县| 综艺| 祁阳县| 同仁县| 东光县| 息烽县| 阳原县| 兰西县| 许昌县| 巴南区| 平利县| 凉山| 敦化市| 宝清县| 大足县|