張建
(安徽經濟管理干部學院,安徽 合肥 230059)
基于Hadoop的視頻云存儲架構研究
張建
(安徽經濟管理干部學院,安徽 合肥 230059)
在計算機技術及互聯網技術不斷發展及應用的過程中,電子信息(視頻、圖片、數據等信息)數量也在不斷的增長,如何夠有效管理及存儲海量電子信息是目前IT行業中的巨大挑戰.傳統的信息存儲方案具有單一、以及不易擴展的劣勢,導致數據的存儲及管理出現了一系列的問題.要想解決這些問題,可以使用云存儲基礎,以此處理大量的數據信息.云存儲具有可擴展性、實用性、高訪問量及成本較低的優點,能夠為數據存儲提供良好的服務.
Hadoop;視頻;云存儲;研究
目前,云計算是計算機行業研究最為熱門的行業,也是社會企業及研究機構重點研究課題.云計算目前正朝著并行處理、分布式處理及網絡計算的方向的發展,能夠有效實現計算機科學的行業化.云計算最主要的優點就是它具有豐富的存儲空間及計算能力,存儲模式的發展不再只是存儲到個人計算機或者服務器中,其能夠存儲到云服務器中,并且還能夠在云服務器中完成信息的計算及處理,為社會企業提供了方面,節約了成本.
1.1 云計算的概念
在互聯網技術不斷發展的過程中,在互聯網中的數據也在不斷的增加,這就產生了大數據.大數據指的就是不能夠通過一般的軟件工具集中管理及處理的數據集,這些數據集主要來源于社交網站、物聯網信息及企業內部經營三方面,其特點就是具有大量的非結構化數據,并且數據多樣化、價值密度較小、具有多種不相關信息,并且要求數據的處理速度實時性較高.
大數據的分析要通過強大的計算方式進行,那么就可以使用云計算.云計算是目前計算機行業中的產業革命,對于云計算的研究日益增加,云計算的出現也為目前計算機及互聯網行業帶來了全新的機遇和挑戰.云計算指的就是能夠通過互聯網訪問IT資源池的方式,此計算方式根據需求使用、按量付費,其資源主要包括網絡、存儲、服務器、計算、服務及應用等,云計算主要包括網絡計算、并行計算、虛擬化、網格計算等.從使用角度可以將云計算分為私有云、公有云及混合云三種.[1]
1.2 云計算的體系結構
在云計算體系結構中,用戶的存儲及操作等一系列的服務都是通過云中的服務器進行,根據用戶不同的需求訪問存儲系統及計算機,用戶系統不需要安裝其他軟件,數據也能夠在云計算機及服務器中進行存儲.云計算體系結構見圖1.

圖1 云計算體系結構
用戶界面:主要是使用戶和云系統相互交互,用戶能夠通過用戶界面向云發出請求;
管理系統:主要是分配給計算機各種資源,以此使云中的負載保持平衡;
部署工具:用戶可以通過部署工具中的服務器節點,配置滿足自身需求的運行環境;
服務目錄:主要顯示用戶能夠操作和訪問的服務目錄列表,用戶可以通過服務目錄選擇操作;
監控:能夠實時查看計算云系統資源的使用現狀,保證資源分配合理;
服務器群:云系統中不同服務器的幾何.
2.1 云存儲
云計算處理大數據的基礎就是解決數據的存儲問題,目前數據存儲已經是社會企業及人們關注的重要問題.傳統存儲設備具有種種劣勢,以滿足不了如今大數據的需求,那么云存儲技術就油然而生.
簡單來說,云存儲就是云計算技術的延伸,主要是通過數據存儲及管理的云計算平臺,結合不同位置及種類的存儲物質,從而創建一個大存儲介質,為外界提供一個同名的存儲結構.圖2為云儲存的簡單結構.

圖2 云存儲結構
2.2 Hadoop理論
目前,最流行的開源云計算平臺就是Hadoop生態系統,它的主要優點就是具有較強的可靠性、容錯性及擴展性,其核心技術主要有三種:其一, HDFS;其二,MapReduce;其三,HBase.能夠為用戶提供透明的云存儲系統.[2]
3.1 云存儲系統架構設計
視頻云存儲使用C/S及B/S兩者相結合進行設計,能夠支持企業內部局域網,還能夠支持廣域網中的多級部署.根據不同的網絡架構,全面實現最佳的管理.使用MVC三層架構體系,層次清晰、便于開發及維護.
顯示層:使用戶能夠清晰的看到系統交互界面,B/S架構一般指的是瀏覽器顯示界面.用戶可以通過頁面添加文件、刪除文件及查找文件,管理員能夠通過顯示層監控及維護集群的運行狀態,并且管理用戶.
業務邏輯層:指的是整個系統業務的規則和邏輯,能夠通過其進行并行處理并且訪問Hadoop數據,處理一系列的基本邏輯,并且配置整個平臺的存儲系統.
數據存儲層:數據存儲層是整個系統結構的基礎,能夠通過Hadoop存儲文檔并且創建倒排索引,還能夠實現原數據的存儲.[3]
3.2 云存儲功能模塊設計
模塊化的設計能夠使系統的開發和維護更加方便,將ERMS管理系統業務和云存儲相結合,可以將系統分為系統管理模塊、數據處理模塊、普通用戶模塊及審計監控模塊.管理員通過系統管理模塊,能夠管理用于及存儲平臺.云存儲服務提供商也能夠作為ERMS系統管理員,普通用戶就是使用云存儲中服務的用戶.數據處理主要是對文件存儲之前進行基本的信息加工,系統監控維護指的主要是故障監控、服務器信息管理及報警管理.[4](圖4為云存儲功能模塊)

圖4 云存儲功能模塊
3.1 視頻文件的上傳
在云存儲平臺中,有許多邏輯處理流程,視頻文件的上傳是最為復雜的.首先,外部的數據是通過交互界面瀏覽器傳送到處理模塊中進行處理,通過中心處理模塊初步處理視頻文件,之后將元數據信息提取出來,并且將其放入到數據庫中.如果視頻文件到達一定值的時候,要將其直接存放到HDFS中,如果沒有到達一定值的話,可以將其存放到服務器小文件中.如果文件滿了的化,可以將文件進行壓縮處理,之后合成大文件存放到HDFS中,之后將文件進行處理建立倒排索引,之后將其存放到數據HBase中.圖5為Hadoop云存儲文件上傳流程.[5]

圖5 Hadoop云存儲文件上傳流程
3.2 視頻文件的下載
用戶在下載視頻文件的過程后之前,首先要判斷文件是否為多個或者文件夾,或者是否為空.如果出現以上情況,系統就會出現提示信息.用戶選定文件之后,系統就會自動處理用戶提交到數據,判斷文件的位置是否在HDFS中,如果沒有,那么就會自動返回頁面,如果在的話,系統就會讀取文件內容,將讀取數據發送到瀏覽器中,之后輸出,最后返回頁面.圖6為Hadoop云存儲文件下載流程.
3.3 視頻文件創建目錄
在用戶為視頻文件創建目錄文件的時候,系統首先要判斷用戶是否具有創建目錄的權限,如果沒有,那么系統就會提示用戶返回頁面,如果有,那么系統就會將用戶的數據信息傳送到服務器中,之后處理并且判斷用戶數據,判斷文件夾是否存在.檢測成功之后,系統就會將其記錄到數據庫中,之后返回到頁面中.[6]

圖6 Hadoop云存儲文件的下載流程
3.4 視頻文件重命名
用戶在重新命名視頻文件名稱或者文件夾名稱的時候,系統會判斷用戶是否能夠重命名文件,如果不能,那么就會有提示信息,使用戶返回頁面.如果可以,系統就會顯示一個對話框,提示用戶是否確定重新命名文件夾,用戶將名稱進行修改之后進行保存.將相關的數據提交到服務器中,之后將數據進行過濾驗證處理,驗證成功之后文件名稱將會保存,用戶提示信息就會提示用戶返回頁面.
3.5 數據表結構
存儲系統數據庫中具有七張表,詳見圖7.

圖7 數據表結構
其中用戶信息表和元數據表處于整個表的核心部分,用戶信息表中字段說明見表1,元數據表字段說明見表2.

表1 用戶信息表字段說明

表2 元數據表字段說明
云計算自發展以來,豐富了計算機與互聯網的功能及應用嗎,云存儲及數據管理技術為云計算的核心.本文基于Hadoop創建了簡單的視頻云存儲架構,實現了云系統中視頻文件的存儲.目前云存儲還處于起步狀態,在今后對于云存儲的研究還會不斷深入,云存儲也會被廣泛應用.
〔1〕劉琨,李愛菊,董龍江.基于Hadoop的云存儲的研究及實現[J].微計算機信息,2011,27(7):220-221.
〔2〕成靜靜.基于Hadoop的分布式云計算/云存儲方案的研究與設計[J].數據通信,2012(5):14-18.
〔3〕崔朝國,劉志明,李婧,等.一種基于Hadoop的Scool云存儲平臺[J].電腦知識與技術,2013(2): 405-408.
〔4〕潘富斌.基于Hadoop的安全云存儲系統研究與實現[D].電子科技大學,2013.
〔5〕王鳳領.基于Hadoop高校教育資源云存儲平臺構建研究[J].計算機技術與發展,2016,26(3):176-180.
〔6〕裴云,陳敏,邢益良.基于Hadoop的數據云存儲研究與應用 [J].電腦編程技巧與維護,2015(8): 79-80.
TP333
A
1673-260X(2017)04-0025-03
2017-02-12
安徽省教育廳自然科學重點項目(KJ2015A394)