Ceph存儲(chǔ)技術(shù)中CRUSH算法的研究與改進(jìn)
發(fā)布時(shí)間:2017-09-04 12:38
本文關(guān)鍵詞:Ceph存儲(chǔ)技術(shù)中CRUSH算法的研究與改進(jìn)
更多相關(guān)文章: Ceph分布式存儲(chǔ) CRUSH算法 一致性哈希 溫度因子 負(fù)載均衡
【摘要】:為了適應(yīng)大數(shù)據(jù)應(yīng)用場(chǎng)景逐步由計(jì)算中心向數(shù)據(jù)中心轉(zhuǎn)變,分布式存儲(chǔ)系統(tǒng)作為底層基礎(chǔ)設(shè)施之一,面臨多方面的挑戰(zhàn),包括數(shù)據(jù)量的增長(zhǎng)速度、數(shù)據(jù)種類(lèi)的多樣性、愈來(lái)愈高的性能需求等。針對(duì)這些變化,分布式存儲(chǔ)技術(shù)中首要解決的三大技術(shù)難點(diǎn)有:數(shù)據(jù)一致性、數(shù)據(jù)可靠性和負(fù)載均衡;數(shù)據(jù)分布問(wèn)題直接影響集群的負(fù)載均衡,優(yōu)秀的數(shù)據(jù)分布算法對(duì)一個(gè)分布式存儲(chǔ)系統(tǒng)尤為重要。CRUSH(Controlled Replication Under Scalable Hashing)算法是Ceph分布式存儲(chǔ)系統(tǒng)中的數(shù)據(jù)分布算法,該算法通過(guò)實(shí)際的集群物理架構(gòu),建立一個(gè)多層次的映射表,根據(jù)層次結(jié)構(gòu)進(jìn)行迭代,返回一組最適合存儲(chǔ)數(shù)據(jù)對(duì)象的存儲(chǔ)節(jié)點(diǎn);該算法使用一致性哈希算法來(lái)產(chǎn)生偽隨機(jī)數(shù),并結(jié)合了節(jié)點(diǎn)權(quán)重進(jìn)行加權(quán)運(yùn)算。因此,該算法分配存儲(chǔ)位置的時(shí)候考慮了集群當(dāng)前的存儲(chǔ)情況,在大多數(shù)情況下能夠保證數(shù)據(jù)分布足夠均勻,不會(huì)影響集群的負(fù)載均衡;由于數(shù)據(jù)對(duì)象的大小、集群規(guī)模以及實(shí)際的部署結(jié)構(gòu)都作為參數(shù)參與了CRUSH算法的運(yùn)算過(guò)程,所以三者之間存在互相影響,互相制約的關(guān)系。在實(shí)際應(yīng)用當(dāng)中,如果存儲(chǔ)的單個(gè)數(shù)據(jù)對(duì)象太小,影響節(jié)點(diǎn)權(quán)重的變化較小,容易造成一組相關(guān)性高的數(shù)據(jù)存入同一組存儲(chǔ)節(jié)點(diǎn)中;針對(duì)這一組數(shù)據(jù)進(jìn)行訪問(wèn)的時(shí)候就會(huì)產(chǎn)生負(fù)載均衡問(wèn)題,即某些節(jié)點(diǎn)的使用率過(guò)高,而大部分節(jié)點(diǎn)空閑,使整個(gè)集群的性能急劇下降;另外一方面,如果對(duì)集群的存儲(chǔ)規(guī)模進(jìn)行改動(dòng),如擴(kuò)容、刪除歷史數(shù)據(jù)、備份、節(jié)點(diǎn)故障等造成集群節(jié)點(diǎn)的權(quán)重值差異也會(huì)導(dǎo)致小文件數(shù)據(jù)對(duì)象落入相同的節(jié)點(diǎn),造成存儲(chǔ)分布不均勻,進(jìn)而影響集群的性能。經(jīng)研究發(fā)現(xiàn),上述問(wèn)題是由CRUSH數(shù)據(jù)分布算法所引起的,CRUSH算法沒(méi)有充分考慮數(shù)據(jù)的多樣性和集群規(guī)模的擴(kuò)展性對(duì)數(shù)據(jù)分布的影響;因此,論文通過(guò)對(duì)CRUSH算法進(jìn)行改進(jìn)。概括起來(lái)論文研究的主要內(nèi)容如下所示:(1)對(duì)Ceph分布式存儲(chǔ)系統(tǒng)進(jìn)行研究,介紹Ceph相比傳統(tǒng)的分布式存儲(chǔ)架構(gòu)具有的創(chuàng)新點(diǎn)和實(shí)現(xiàn)原理;通過(guò)模擬大規(guī)模集群,對(duì)Ceph分布式存儲(chǔ)進(jìn)行測(cè)試,驗(yàn)證了目前Ceph分布式存儲(chǔ)系統(tǒng)確實(shí)存在數(shù)據(jù)分布不均勻的缺陷。(2)對(duì)CRUSH數(shù)據(jù)分布算法進(jìn)行改進(jìn),增加溫度因子約束小文件數(shù)據(jù)對(duì)象的存儲(chǔ);當(dāng)CRUSH算法在選擇結(jié)果時(shí),除了優(yōu)先考慮weight值高的節(jié)點(diǎn),還要在每一次訪問(wèn)節(jié)點(diǎn)時(shí)增加被訪問(wèn)節(jié)點(diǎn)的溫度值,當(dāng)連續(xù)訪問(wèn)同一個(gè)節(jié)點(diǎn)時(shí),溫度值會(huì)以更快的速度增長(zhǎng),與weight值相反,CRUSH算法應(yīng)當(dāng)優(yōu)先考慮溫度值低的節(jié)點(diǎn)。(3)將改進(jìn)的CRUSH算法以動(dòng)態(tài)鏈接庫(kù)的方式應(yīng)用到Ceph分布式存儲(chǔ)系統(tǒng)中,增加了部署Ceph的靈活性,根據(jù)實(shí)際情況選擇是否需要優(yōu)化,以參數(shù)的形式進(jìn)行調(diào)整,無(wú)需對(duì)整個(gè)集群進(jìn)行備份和重啟。基于上述研究?jī)?nèi)容,建立實(shí)驗(yàn)環(huán)境,搭建Ceph分布式存儲(chǔ)集群,模擬多種應(yīng)用場(chǎng)景對(duì)集群進(jìn)行測(cè)試。最后,論文通過(guò)rados bench靜態(tài)統(tǒng)計(jì)數(shù)據(jù)分布情況;使用iostat動(dòng)態(tài)記錄和分析每個(gè)存儲(chǔ)節(jié)點(diǎn)中磁盤(pán)使用率;使用不同參數(shù)的iozone工具對(duì)整個(gè)集群進(jìn)行吞吐量(Throughput)驗(yàn)證對(duì)比改進(jìn)前和改進(jìn)后的集群性能,驗(yàn)證改進(jìn)后算法的可行性和優(yōu)化程度。實(shí)驗(yàn)結(jié)果表明,改進(jìn)的CRUSH算法能夠解決小文件存儲(chǔ)所引起的負(fù)載均衡問(wèn)題。
【關(guān)鍵詞】:Ceph分布式存儲(chǔ) CRUSH算法 一致性哈希 溫度因子 負(fù)載均衡
【學(xué)位授予單位】:成都信息工程大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2016
【分類(lèi)號(hào)】:TP333
【目錄】:
- 摘要4-6
- Abstract6-10
- 第一章 緒論10-17
- 1.1 選題背景及意義10-12
- 1.2 國(guó)內(nèi)外研究現(xiàn)狀12-13
- 1.2.1 Ceph開(kāi)源項(xiàng)目的進(jìn)展?fàn)顩r12-13
- 1.2.2 CRUSH算法的研究現(xiàn)狀13
- 1.3 論文的主要工作13-14
- 1.3.1 研究Ceph分布式存儲(chǔ)13
- 1.3.2 改進(jìn)CRUSH數(shù)據(jù)分布算法13-14
- 1.3.3 優(yōu)化Ceph存儲(chǔ)性能14
- 1.4 論文結(jié)構(gòu)與創(chuàng)新點(diǎn)14-17
- 1.4.1 論文的組織結(jié)構(gòu)14-15
- 1.4.2 論文的創(chuàng)新點(diǎn)15-17
- 第二章 分布式存儲(chǔ)系統(tǒng)17-29
- 2.1 分布式存儲(chǔ)的架構(gòu)設(shè)計(jì)17-21
- 2.1.1 分布式存儲(chǔ)通用設(shè)計(jì)思想17-20
- 2.1.2 Ceph分布式存儲(chǔ)的特點(diǎn)20-21
- 2.2 分布式存儲(chǔ)中的關(guān)鍵技術(shù)21-26
- 2.2.1 分布式系統(tǒng)一致性問(wèn)題21-24
- 2.2.2 Ceph的一致性問(wèn)題24-26
- 2.3 Ceph分布式存儲(chǔ)的優(yōu)勢(shì)26-28
- 2.3.1 Ceph分布式存儲(chǔ)系統(tǒng)的“統(tǒng)一性”優(yōu)勢(shì)26-27
- 2.3.2 Ceph分布式存儲(chǔ)系統(tǒng)的容錯(cuò)能力27-28
- 2.4 本章小結(jié)28-29
- 第三章 CRUSH算法的研究與分析29-40
- 3.1 CRUSH算法的目標(biāo)29
- 3.2 CRUSH算法設(shè)計(jì)與分析29-36
- 3.2.1 集群映射表的分層設(shè)計(jì)29-31
- 3.2.2 數(shù)據(jù)結(jié)構(gòu)Bucket類(lèi)型31-35
- 3.2.3 數(shù)據(jù)副本的存放方式35-36
- 3.3 CRUSH算法流程36-38
- 3.4 CRUSH算法可靠性評(píng)價(jià)38-39
- 3.5 本章小結(jié)39-40
- 第四章 改進(jìn)的CRUSH算法設(shè)計(jì)與實(shí)現(xiàn)40-50
- 4.1 改進(jìn)算法的提出背景40-41
- 4.2 溫度因子計(jì)算過(guò)程41-44
- 4.3 改進(jìn)的CRUSH算法原理44-45
- 4.4 改進(jìn)的CRUSH算法流程45-49
- 4.4.1 改進(jìn)數(shù)據(jù)對(duì)象45-46
- 4.4.2 選取溫度因子46-47
- 4.4.3 基于溫度因子的CRUSH算法47-49
- 4.5 本章小結(jié)49-50
- 第五章 實(shí)驗(yàn)與性能分析50-60
- 5.1 實(shí)驗(yàn)環(huán)境準(zhǔn)備50-53
- 5.1.1 Ceph集群軟件環(huán)境與硬件配置50-51
- 5.1.2 Ceph集群內(nèi)部網(wǎng)絡(luò)配置方案51
- 5.1.3 集群搭建詳細(xì)步驟51-53
- 5.2 集群性能測(cè)試53-57
- 5.2.1 數(shù)據(jù)分布對(duì)比實(shí)驗(yàn)53-57
- 5.2.2 集群I/O負(fù)載均衡實(shí)驗(yàn)57
- 5.3 實(shí)驗(yàn)結(jié)果分析57-59
- 5.4 本章小結(jié)59-60
- 第六章 總結(jié)與展望60-62
- 6.1 全文總結(jié)60
- 6.2 研究展望60-62
- 參考文獻(xiàn)62-66
- 作者在讀期間科研成果簡(jiǎn)介66-67
- 致謝67
【參考文獻(xiàn)】
中國(guó)期刊全文數(shù)據(jù)庫(kù) 前3條
1 詹明非;;軟件定義存儲(chǔ)技術(shù)及其應(yīng)用研究[J];電信技術(shù);2014年12期
2 沈良好;吳慶波;楊沙洲;;基于Ceph的分布式存儲(chǔ)節(jié)能技術(shù)研究[J];計(jì)算機(jī)工程;2015年08期
3 陶雪嬌;胡曉峰;劉洋;;大數(shù)據(jù)研究綜述[J];系統(tǒng)仿真學(xué)報(bào);2013年S1期
,本文編號(hào):791623
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/791623.html
最近更新
教材專(zhuān)著