基于Hadoop的云盘系统客户端技术选型说明
伴隨云計(jì)算技術(shù)的發(fā)展,云盤系統(tǒng)不斷涌現(xiàn),百度、360、金山等都推出了各自的云盤產(chǎn)品,而云盤存儲(chǔ)的模式也越來越被用戶所接受,也有越來越多的公司躍躍欲試,想在云存儲(chǔ)領(lǐng)域大展拳腳,有一番作為。但是開源Hadoop平臺(tái)實(shí)現(xiàn)語言Java和操作系統(tǒng)Linux的限制,Windows用戶桌面版云盤客戶端的開發(fā)成為了一道不可逾越的屏障。
傳統(tǒng)桌面軟件開發(fā)最適合的語言是C/C++體系(不排斥非主流VB、Delphi、C#,有興趣的可自行研究),云盤系統(tǒng)的客戶端也是針對(duì)最廣大的Windows桌面用戶設(shè)計(jì),最基本的要求是沒要求,傻瓜式。所以如何基于開源的Hadoop云計(jì)算平臺(tái),開發(fā)云盤系統(tǒng)客戶端的問題就轉(zhuǎn)化為如何使用C/C++(或其相類語言)開發(fā)云盤客戶端的問題。
Hadoop提供的客戶端開發(fā)接口包括Fuse、libhdfs、Java、thrift、webhdfs等。這幾種接口中,Fuse是掛載式,適合在Linux/Unix類本地管理hadoop文件,從HDFS提供的Shell管理腳本對(duì)比的角度來看,使用意義不大;libhdfs適用于Linux/Unix服務(wù)端訪問HDFS存儲(chǔ)空間,不能應(yīng)用于Windows桌面終端軟件的開發(fā);Java接口,由于Java虛擬機(jī)的限制,制作的桌面軟件以來域Java的JDK,需要安裝配置JDK相關(guān)環(huán)境變量,不符合Windows桌面程序常用習(xí)慣;Thrift是一個(gè)不錯(cuò)選擇,其原理是代理模式,在Hadoop服務(wù)器端啟動(dòng)ThriftServer支持,在客戶端通過客戶端庫(kù)訪問ThrfitServer從而實(shí)現(xiàn)對(duì)hdfs分布式文件存儲(chǔ)系統(tǒng)的訪問,這是一個(gè)不錯(cuò)的選擇,作為開發(fā)者也可以自行擴(kuò)展ThriftServer的功能;最后還有一種選擇就是自行開發(fā)服務(wù)端代理,在服務(wù)器端通過libhdfs或者Java API進(jìn)行開發(fā),條件是你必須十分熟悉HDFS系統(tǒng)接口和技術(shù)框架體系。
本文作者在開源社區(qū)上傳了一套針對(duì)Windows用戶、基于thrift的開發(fā)庫(kù),有興趣的可自行下載:
https://sourceforge.net/projects/libhdfs4win/
?
總結(jié)
以上是生活随笔為你收集整理的基于Hadoop的云盘系统客户端技术选型说明的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS中用top命令CPU负载
- 下一篇: Windows Server2008R2