基于arm架構(gòu)單片機(jī)的hadoop服務(wù)器嘗試
從淘寶上面買了一個(gè)arm的單片機(jī),上面有一顆基于ARMv7架構(gòu)的單核cpu,1G內(nèi)存,4G存儲(chǔ)。但是最主要的,是上面有網(wǎng)卡接口,雖然是100M的,但這讓構(gòu)建集群成為了一個(gè)可能。另外這個(gè)比樹莓派更好的是,上面有sata硬盤的接口,這樣,存儲(chǔ)的問題也可以解決。雖然我現(xiàn)在手里沒有sata 2.5寸的硬盤,但是起碼給了個(gè)想象的空間。
本文引用地址:http://m.butianyuan.cn/article/201611/318804.htm很小的一塊板子,表就是casio的ef339,去年博客大賽的獎(jiǎng)品,也是我唯一的一塊表,而且我不擔(dān)任任何公職,也不是黨員,不要平我祖墳。
關(guān)于操作系統(tǒng)方面,cubieboard本身內(nèi)置android 4.0.4,連上HDMI在電視上刷微博很爽,40寸的大pad,誰有?但是android不是我們所需要的,可以用linaro系統(tǒng),for arm的ubuntu。從網(wǎng)上找了一個(gè)國外網(wǎng)友自制的linaro server版,用工具燒進(jìn)TF(microSD)卡。不比自己本身的android啟動(dòng)速度快,這個(gè)啟動(dòng)速度比較慢。不過要做好心理準(zhǔn)備,TF卡一旦燒了操作系統(tǒng)img上去,就再也不能當(dāng)存儲(chǔ)用了。
昨天晚上在家通過網(wǎng)線用apt-get install 了openjdk6,也下載好了hadoop-1.0.4。今天在公司利用午休時(shí)間配置了單機(jī)的hadoop環(huán)境。并跑了一下pi任務(wù),結(jié)果比我想象的要好,先看幾張圖吧,最后寫上測試數(shù)據(jù)和對比測試數(shù)據(jù)。
開機(jī)啟動(dòng)圖
因?yàn)楣窘壎╩ac,所以沒有聯(lián)網(wǎng),懶得去找ops做mac綁定了。
測試命令,啟動(dòng)10個(gè)map,每map投擲100次飛鏢,計(jì)算pi值。因?yàn)橹饕强碿pu計(jì)算能力,sd卡當(dāng)存儲(chǔ),肯定拼不過sata硬盤的速度。下圖有cpu信息和操作系統(tǒng)的信息。
cpu信息大圖
連線圖,本身采用HDMI作為顯示輸出,還得去找HDMI轉(zhuǎn)VGA的轉(zhuǎn)換頭。
arm hadoop服務(wù)器大小,比中南海略大。
最后讓我們回到數(shù)據(jù)上來,琢磨這種方式其實(shí)我最關(guān)心的是性價(jià)比,主要看多少顆arm v7可以頂一顆intel cpu。因?yàn)槌ミ@一點(diǎn),硬盤,內(nèi)存等等都是必不可少的開銷,用哪種架構(gòu)都是一樣的。而性價(jià)比主要就集中在cpu單價(jià)和能耗上。
在64位arm沒有出來以前,就拿arm v7說事吧。
用臺(tái)式機(jī)里的intel做虛擬機(jī)單核1G內(nèi)存做了個(gè)對比,Hadoop pi 任務(wù)對比數(shù)據(jù)如下。
首先intel和arm的hadoop配置相同,都是hadoop官網(wǎng)的單機(jī),單復(fù)制塊默認(rèn)配置,HEAPSIZE均設(shè)置為128M。
午休時(shí)間有限,只做了pi的測試。而且沒有服務(wù)器上的虛擬機(jī),沒法測試至強(qiáng)CPU的性能,臺(tái)式機(jī)做個(gè)大概的參考好了。
測試命令:sudo -u hadoop hadoop jar hadoop-example-1.0.4.jar pi 10 100
第一次 | 第二次 | 第三次 | |
intel i3 2100 1core centos | 82.064s | 75.992s | 81.971s |
arm v7 1core ubuntu | 173.46s | 157.165s | 168.397s |
讀寫存儲(chǔ)的效率對比,分別順序讀寫200M文件。
intel+機(jī)械硬盤 200M寫,500M讀
arm+sd卡 60M寫,60M讀,可見讀寫硬盤intel占大便宜了,不過因?yàn)闆]有外掛硬盤,所以也不知道arm讀寫效率如何。sd卡就別想了,太慢了,盡管這個(gè)SD卡已經(jīng)算快的了。
且不論讀寫磁盤操作的差距,僅以這個(gè)作為計(jì)算能力的差距參考,可以看到,大概2-3顆arm v7可以抵的上intel i3 2100里面的一個(gè)核,那么大概12顆可以超越一顆i3 2100。i3 2100的功耗每小時(shí)大概在50-60瓦左右,而12顆arm v7的功耗每小時(shí)不到4瓦。
在我寫這篇作文的時(shí)候,i3 2100 大約600多一顆,12顆arm v7大約40美元,折合起來不到300。所以無論從能耗還是價(jià)格上看,arm cpu還是具備一定優(yōu)勢的。只是現(xiàn)在64位cpu沒出來,做hadoop服務(wù)器沒有什么計(jì)算優(yōu)勢,但是拿來當(dāng)webserver或者存儲(chǔ)服務(wù)器還是綽綽有余的。
不過我個(gè)人覺得,未來用arm服務(wù)器做hadoop服務(wù)器還是極具誘惑的。無論從能耗還是采購成本上,arm都很低廉,至少在我來看,還是很性感的。
評(píng)論