【正文】
武漢理工大學(xué)畢業(yè)設(shè)計(論文)云存儲技術(shù)研究發(fā)展畢業(yè)設(shè)計目錄摘要 IAbstract II1緒論 1 1 22云存儲的概念 3 3 3 4 43云存儲的關(guān)鍵技術(shù) 6 6 7 數(shù)據(jù)備份技術(shù) 8 8 副本數(shù)據(jù)布局 8 連續(xù)數(shù)據(jù)保護(hù) 8 數(shù)據(jù)縮減技術(shù) 9 自動精簡配置 9 自動存儲分層 9 重復(fù)數(shù)據(jù)刪除 10 數(shù)據(jù)壓縮 10 11 容錯技術(shù) 124云存儲的架構(gòu)技術(shù) 13 13 15 16 175云計算仿真CloudSim 20 20 22 22 296 總結(jié)及展望 30 本文工作總結(jié) 30 30參考文獻(xiàn) 31致謝 33摘要云計算是當(dāng)前研究與應(yīng)用的熱點問題。至今為止,Google、Microsoft、IBM、亞馬遜等IT商業(yè)巨頭都推出了自己的云計算平臺,并把云計算作為其未來發(fā)展的最主要戰(zhàn)略之一。云存儲作為云計算的底層服務(wù),對上層服務(wù)提供重要的支持;同時,云存儲可以有效的存儲和管理海量數(shù)據(jù),所以更是成為專家學(xué)者們關(guān)注的焦點。因此,云存儲的研究不但緊跟發(fā)展的趨勢,同時還具有較高的應(yīng)用價值。云存儲是一種架構(gòu)復(fù)雜的分布式文件系統(tǒng),一是其建立在云計算系統(tǒng)的基礎(chǔ)設(shè)施之上,這樣的基礎(chǔ)實施是基于廉價的或虛擬化了的不可信物理硬件;二是其必須支持超大節(jié)點規(guī)模和海量數(shù)據(jù)的高效存儲,這對于系統(tǒng)架構(gòu)和模塊設(shè)計的關(guān)鍵技術(shù)提出了巨大的挑戰(zhàn)。本文討論了云存儲的發(fā)展背景,給出了云存儲的定義,描述了云存儲的特點,提出了云存儲的架構(gòu)模型,系統(tǒng)地闡述了云存儲的關(guān)鍵技術(shù),對比了GFS、GPFS、HDFS、Dynamo架構(gòu)的特點,并用CloudSim對云計算系統(tǒng)進(jìn)行了仿真。關(guān)鍵詞:云存儲,關(guān)鍵技術(shù),架構(gòu)模型,HDFS,CloudSimAbstractCloud puting is a hot topic in recent research and applications.Up to now, Google、Microsoft、IBM、Amazon and some other famous cooperations have proposed their cloud puting application, and take cloud puting as one of the most important strategy in the future.Cloud storage is the lower layer of cloud puting system which supports the service of the other layers above it.Meanwhile,it is an effective way to store and manage heavy data.So it focused even more attentions from some researchers.Therefore, the research of cloud storage will not only keep up on trends, but also has a high application value.Cloud storage is a distributed file system with plicated architecture.Firstly,it is implemented on top of the cloud puting infrastructure which is based on cheap,virtualized and unreliable physical hardware.Secondly,it should supports huge server scale,efficient heavy data storage.All of these challenge the key technologies of the system architecture and modules design.This article discusses the background of the development of cloud storage, gives the definition of cloud storage,describes the characteristics of cloud storage, proposes the mode of cloud storage architecture,exposed the key technologies of cloud storage systematically, pared the features of GFS, GPFS, HDFS, Dynamo architecture , and simulated the cloud puting system with CloudSim.Key Words:cloud storage,the key technologies,the mode of cloud storage architecture,HDFS,CloudSimII1緒論近年來,隨著云計算[12]和軟件即時服務(wù)[35]的興起,云存儲成為信息存儲領(lǐng)域的一個研究熱點。與傳統(tǒng)的存儲設(shè)備相比,云存儲不僅僅是一個硬件,而是一個網(wǎng)絡(luò)設(shè)備、存儲設(shè)備、服務(wù)器、應(yīng)用軟件、公用訪問接口、接入網(wǎng)和客戶端程序等多個部分組成的系統(tǒng)[6]。這是一種具有很大誘惑性的存儲技術(shù),云存儲可以實現(xiàn)存儲完全虛擬化,大大簡化應(yīng)用環(huán)節(jié),節(jié)省客戶建設(shè)成本,同時提供更強(qiáng)的存儲和共享功能。云狀存儲中所有設(shè)備對使用者完全透明,任何地方任何被授權(quán)用戶都可以通過一根接入線與云存儲連接,進(jìn)行空間與數(shù)據(jù)訪問。用戶無需關(guān)心存儲設(shè)備型號、數(shù)量、網(wǎng)絡(luò)結(jié)構(gòu)、存儲協(xié)議、應(yīng)用接口等,應(yīng)用簡單透明。因此,云存儲的研究不但緊跟發(fā)展的趨勢,同時還具有較高的應(yīng)用價值。迄今為止,人類對于計算機(jī)發(fā)展的需求所關(guān)心的共同問題都集中在如何進(jìn)行高效的存儲和存儲如何促進(jìn)計算的協(xié)作上。存儲與之相關(guān)計算的發(fā)展歷經(jīng)了以下四個的階段[7]:(1)集中式的應(yīng)用和存儲——客戶機(jī)/服務(wù)器計算在計算的初期,所有的應(yīng)用軟件、所有的數(shù)據(jù)和控制器都位于大型的電腦主機(jī)之上。用戶必須連接到主機(jī),獲得適當(dāng)?shù)臋?quán)限后才能訪問數(shù)據(jù)。(2)存儲資源共享——對等計算無須經(jīng)由服務(wù)器,將一臺計算機(jī)連接到另一臺計算機(jī),導(dǎo)致了P2P對等計算的發(fā)展。在P2P網(wǎng)絡(luò)中沒有主機(jī),所有的通信不再經(jīng)由主服務(wù)器,計算機(jī)平等運行,所有的數(shù)據(jù)分散存儲到對等的節(jié)點上,提高了通信效率,易于進(jìn)行數(shù)據(jù)的共享。(3)存儲與計算的分布式化個人電腦能的計算和存儲的資源很大一部分沒有得到較好的利用,分布式計算能很好的利用這些資源。當(dāng)一臺計算用于某個分布式項目時,需要在機(jī)器上安裝軟件,它會利用空閑的時間進(jìn)行數(shù)據(jù)的存儲與運算并定期傳送到分布式計算網(wǎng)絡(luò)中與該項目中的其它計算合并結(jié)果。只要有足夠的計算機(jī)參與,這種做法足以比擬更大的主機(jī)和超級計算機(jī)的處理能力,用戶可以共享文件并同時在相同的文件上工作。(4)云計算——瘦客戶端下的計算與存儲隨著手持設(shè)備的發(fā)展,云計算的產(chǎn)生使得在瘦客戶端——沒有多少計算力和存儲空間的接入設(shè)備上,也能夠進(jìn)行海量數(shù)據(jù)的處理[8]。更深入的來看存儲技術(shù)的發(fā)展。由于單機(jī)存儲方案無法滿足數(shù)據(jù)拓展和協(xié)作性,而產(chǎn)生了分布式存儲系統(tǒng)[10]。分布式存儲系統(tǒng)是基于硬件的存儲技術(shù),由于其較大的成本和較差的靈活性而逐漸被大型企業(yè)放棄[9]。云存儲是一種新的分布式存儲模式,具有廉價、高可靠性和安全性的優(yōu)點[7,9,11,12],成為未來最值得期待推廣和應(yīng)用的技術(shù)之一。云存儲這個概念一經(jīng)提出,就得到了眾多廠商的支持和關(guān)注[13]。Amazon公司推出彈性塊存儲技術(shù)支持?jǐn)?shù)據(jù)持久性存儲;Google推出在線存儲服務(wù)GDrive;內(nèi)容分發(fā)網(wǎng)絡(luò)服務(wù)提供商CDNetworks和云存儲平臺服務(wù)商Nirvanix結(jié)成戰(zhàn)略伙伴關(guān)系,提供云存儲和內(nèi)容傳送服務(wù)集成平臺;EMC公司收購Berkeley Data Systems,取得該公司的Mozy在線服務(wù)軟件,并開展SaaS業(yè)務(wù);Microsoft公司推出Windows Azure,并在美國各地建立龐大的數(shù)據(jù)中心;IBM也將云計算標(biāo)準(zhǔn)作為全球備份中心擴(kuò)展方案的一部分。目前有近百種云存儲系統(tǒng)。一些系統(tǒng)有明確的關(guān)注點,如存儲網(wǎng)絡(luò)電子郵件信息或者數(shù)字圖片。其它一些用來存儲所有形式的數(shù)字文件。一些云存儲系統(tǒng)是小規(guī)模操作的,其它一些是超大集群的以至于物理設(shè)備能填滿整個倉庫。盡管對于云存儲來說有很多優(yōu)勢值得我們選擇和研究,然而云存儲仍面臨著許多技術(shù)的難題,特別是安全性。[13],可以看出安全、控制和性能等問題是關(guān)注的焦點。有效的控制和性能反映出用戶對于云存儲可用性的期待。目前云存儲研究的熱點仍集中在安全性、可用性、可靠性三個方面。云存儲安全特別是用戶數(shù)據(jù)的隱私問題,即服務(wù)商也不能得到用戶的數(shù)據(jù),至今沒有較好的解決方案。 云存儲的關(guān)注調(diào)查2云存儲的概念 云存儲是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能, 將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作, 共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一個系統(tǒng)。云存儲系統(tǒng)以傳統(tǒng)的分布式存儲技術(shù)為基礎(chǔ),利用高吞吐率網(wǎng)絡(luò)技術(shù)為依托,一方面高效地整合管理網(wǎng)絡(luò)存儲資源,另一方面對外提供友好的接口,發(fā)布便捷的網(wǎng)絡(luò)數(shù)據(jù)存儲服務(wù)。與傳統(tǒng)的存儲設(shè)備相比,云存儲不僅僅是一個硬件,而是一個網(wǎng)絡(luò)設(shè)備、存儲設(shè)備、服務(wù)器、應(yīng)用軟件、公用訪問接口、接入網(wǎng)和客戶端程序等多個部分組成的系統(tǒng)[12]。云存儲不是存儲, 而是服務(wù)。使用者使用云存儲,并不是使用某一個存儲設(shè)備,而是使用整個云存儲系統(tǒng)帶來的一種數(shù)據(jù)訪問服務(wù)。云存儲的核心是應(yīng)用軟件與存儲設(shè)備相結(jié)合,通過應(yīng)用軟件來實現(xiàn)存儲設(shè)備向存儲服務(wù)的轉(zhuǎn)變[13]。相比于傳統(tǒng)的集中存儲方式,云存儲系統(tǒng)具有以下幾點優(yōu)勢:(1)更容易擴(kuò)容(包括帶寬)云存儲的擴(kuò)容過程將變得簡單:新設(shè)備僅需安裝操作系統(tǒng)及云存儲軟件后,打開電源接上網(wǎng)絡(luò),云存儲系統(tǒng)便能自動識別,自動把容量加入存儲池中完成擴(kuò)展。相比傳統(tǒng)的存儲擴(kuò)容,云存儲架構(gòu)采用的是并行擴(kuò)容方式,即當(dāng)容量不夠時,采購新的存儲服務(wù)器即可,擴(kuò)容環(huán)節(jié)無任何限制。(2)更易于管理在傳統(tǒng)存儲系統(tǒng)管理中,管理人員需要面對不同的存儲設(shè)備不同的管理界面,要了解每個存儲的使用狀況,工作復(fù)雜而繁重,當(dāng)傳硬盤或是存儲服務(wù)器損壞時,讀寫效率會降低,數(shù)據(jù)很可能丟失;而云存儲沒有這個困擾,硬盤壞掉,數(shù)據(jù)會自動遷移到別的硬盤,不需要立即更換硬盤,大大減輕了管理人員的工作負(fù)擔(dān)。對云存儲來說,管理人員只要在整體硬盤容量快用完時,按需采購服務(wù)器即可,通過一個統(tǒng)一管理界面監(jiān)控每臺存儲服務(wù)器的使用狀況,使得維護(hù)變得簡單和易操作。(3)成本更低廉傳統(tǒng)的存儲系統(tǒng)對硬盤的要求近乎苛刻,必須同廠家、同容量、同型號,否則系統(tǒng)很容易出問題。面對升級換代較快的IT產(chǎn)業(yè),硬盤在使用2~3年后很難找到同型號產(chǎn)品更換。而云存儲沒有這個問題,云存儲系統(tǒng)中不同的硬盤可以一起工作,既可以實現(xiàn)原有硬件的利舊保護(hù)投入,又可以實現(xiàn)新技術(shù)、新設(shè)備的快速更新,合理搭配、可持續(xù)發(fā)展。且云存儲系統(tǒng)中所采用的存儲及服務(wù)器設(shè)備均是性價比較高的設(shè)備??蓪崿F(xiàn)長久合作關(guān)系下,設(shè)備商采購的穩(wěn)定渠道,便于實現(xiàn)對成本及服務(wù)質(zhì)量的控制。(4)數(shù)據(jù)更安全,服務(wù)不中斷傳統(tǒng)存儲系統(tǒng)會因為硬件損壞而導(dǎo)致服務(wù)停止,雖然可以設(shè)計全冗余的環(huán)境,但成本相對太高且工作復(fù)雜。云存儲系統(tǒng)則不同,它可通過將文件和數(shù)據(jù)保存在不同的存儲節(jié)點, 避免了單一硬件損壞帶來的數(shù)據(jù)不可用。云存儲系統(tǒng)知道文件存放的位置,在硬件發(fā)生損壞時,云存儲系統(tǒng)會自動將讀寫指令導(dǎo)向存放在另一臺存儲服務(wù)器上的文件,保持服務(wù)的繼續(xù)。另外,傳統(tǒng)存儲系統(tǒng)在升級時,往往需要把舊的存儲設(shè)備文件備份出來后,停機(jī)換上新的存儲設(shè)備,這通常會導(dǎo)致服務(wù)的短暫停止。云存儲并不單獨依賴一臺存儲服務(wù)器,因此存儲服務(wù)器硬件的更新、升級并不會影響存儲服務(wù)的提供,系統(tǒng)會將舊存儲服務(wù)器上的文件遷移到別的存儲服務(wù)器,等新的存儲服務(wù)器上線后,文件會再遷移回來。從整體來看,云計算系統(tǒng)可以認(rèn)為是以數(shù)據(jù)處理、數(shù)據(jù)運算為中心的系統(tǒng)。云計算的設(shè)計方向是將在不同地域的各種計算資源,通過虛擬化方式統(tǒng)一到龐大的計算資源“云”系統(tǒng)中來。云系統(tǒng)統(tǒng)一調(diào)配、協(xié)調(diào)、處理來自不同客戶的運算需求,通過云系統(tǒng)計算后對外輸出運算結(jié)果。云計算的一個核心理念就是通過不斷提高“云”的處理能力,進(jìn)而減少用戶終端的處理負(fù)擔(dān),最終使用戶終端簡化成一個單純的輸入輸出設(shè)備,并能按需享受“云”的強(qiáng)大計算處理能力。通過云計算技術(shù),網(wǎng)絡(luò)服務(wù)提供者可以在數(shù)秒之內(nèi),處理數(shù)以千萬計甚至億計的信息,達(dá)到和“超級計算機(jī)”同樣強(qiáng)大的網(wǎng)絡(luò)服務(wù)功能。云計算系統(tǒng)不但能對數(shù)據(jù)進(jìn)行處理和運算,系統(tǒng)中還有大量的存儲陣列設(shè)備,以實現(xiàn)對計算數(shù)據(jù)的保存和管理。在云計算系統(tǒng)中配置相應(yīng)的存儲設(shè)備,該計算系統(tǒng)即擁有了云存儲系統(tǒng)功能。由此可以理解,云存儲是云計算系統(tǒng)的延伸,是配置了大容量存儲空間的云計算系統(tǒng),可以說云存儲是云計算服務(wù)的一種,即SaaS[13](storage as a service,存儲即服務(wù)),甚至可以說,利用云計算系統(tǒng)來建立存儲系統(tǒng),此時的云存儲概念相當(dāng)于一個云計算服務(wù),它往往稱之為“存儲云”。如亞馬遜的S3服務(wù),我們可以利用它來建立另外一個存儲系統(tǒng),S3服務(wù)本身就是云服務(wù),所以這樣的系統(tǒng)可以稱為云存儲。云存儲系統(tǒng)的結(jié)構(gòu)模型由4層組成。(1)存儲層存儲層是云存儲最基礎(chǔ)的部分。數(shù)量龐大的云存儲設(shè)備分布在不同地域,彼此之間通過廣域網(wǎng)、互聯(lián)網(wǎng)或者FC光纖通道網(wǎng)絡(luò)連接。各存儲設(shè)備上都安裝有統(tǒng)一的存儲設(shè)備管理系統(tǒng),可以實現(xiàn)存儲設(shè)備的邏輯虛擬化管理、集中管理、多鏈路冗余管理以及硬件設(shè)備的狀態(tài)監(jiān)控和維護(hù)升級等。(2)基礎(chǔ)管理層基礎(chǔ)管理層是云存儲最核心的部分,也是云存儲中