HDFS和FastDFS的上传、下载效率对比测试
測(cè)試環(huán)境
測(cè)試使用的FastDFS服務(wù)器,HDFS服務(wù)器均在vmware虛擬機(jī)中搭建,HDFS的服務(wù)器直接由FastDFS服務(wù)器克隆而來(lái),所以除了一個(gè)安裝了hadoop,一個(gè)安裝了FastDFS,其他環(huán)境完全一致。
HDFS配置了集群環(huán)境,一主三從,但是只打開(kāi)一臺(tái)從節(jié)點(diǎn)服務(wù)器。
vmware的配置如下圖:
測(cè)試主機(jī)(上述vmware、測(cè)試代碼的運(yùn)行環(huán)境)CPU、內(nèi)存如下圖:
編碼層面,對(duì)HDFS和FastDFS客戶端都做了一層封裝以達(dá)到簡(jiǎn)化開(kāi)發(fā)的目的,封裝對(duì)性能的影響不大。
所有代碼均在JDK1.6下編譯和運(yùn)行,使用JUNIT運(yùn)行了測(cè)試代碼,均在IDEA中完成測(cè)試。
HDFS和FastDFS均在部署完成后直接測(cè)試,未做任何優(yōu)化。
當(dāng)然最終的測(cè)試結(jié)果也僅供參考,畢竟不同的環(huán)境,優(yōu)化手段對(duì)最終的結(jié)果影響還是很大的。
1、文件上傳測(cè)試
25個(gè)小文件上傳測(cè)試(最大文件30.2mb,最小文件13b)
HDFS測(cè)試如下:
測(cè)試結(jié)果:coast time : 13599ms
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 1949ms
?
318個(gè)圖片上傳測(cè)試(每個(gè)文件大小1mb左右)
HDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 63460ms
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 9585ms
?
3個(gè)視頻文件測(cè)試(每個(gè)大小700多mb)
HDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 62092ms
?
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 58137ms
?
3個(gè)較大視頻文件測(cè)試(每個(gè)2gb+,總共7.2gb)
HDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 171743ms
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 131861ms
?
?
2、文件下載測(cè)試
25個(gè)小文件的下載測(cè)試
HDFS 下載25個(gè)小文件 coast time : 13008ms
FastDFS下載25個(gè)小文件 coast time : 1218ms
?
318個(gè)圖片的下載測(cè)試
HDFS 下載318個(gè)圖片 coast time : 24942ms
FastDFS 下載318個(gè)圖片 coast time : 7051ms
?
3個(gè)視頻文件下載測(cè)試(單個(gè)700mb)
HDFS下載視頻coast time : 69266ms
FastDFS 下載視頻 coast time : 36144ms
?
?
3個(gè)較大視頻下載測(cè)試(單個(gè)2gb)
HDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 192315ms
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 138215ms
3、文件刪除測(cè)試
25個(gè)小文件刪除測(cè)試
HDFS 刪除25個(gè)小文件 coast time : 10517ms
FastDFS刪除25個(gè)小文件 coast time : 62ms
?
318個(gè)圖片刪除測(cè)試
HDFS 刪除318個(gè)圖片 coast time : 12828ms
FastDFS 刪除318個(gè)圖片 coast time : 811ms
?
3個(gè)視頻刪除測(cè)試(單個(gè)700mb)
HDFS刪除視頻coast time : 10286ms
FastDFS 刪除視頻 coast time : 150ms
?
3個(gè)較大視頻刪除測(cè)試(單個(gè)2gb)
HDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 10594ms
?
FastDFS下測(cè)試:
測(cè)試結(jié)果:coast time : 255ms
總結(jié)
測(cè)試結(jié)果總覽
| 測(cè)試項(xiàng) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? | HDFS ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | FastDFS ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
| 25個(gè)小文件上傳 | 13599ms | 1949ms |
| 318個(gè)圖片上傳 | 63460ms | 9585ms |
| 3個(gè)700m視頻上傳 | 62092ms | 58137ms |
| 3個(gè)2g視頻上傳 | 171743ms | 131861ms |
| 25個(gè)小文件下載 | 13008ms | 1218ms |
| 318個(gè)圖片下載 | 24942ms | 7051ms |
| 3個(gè)700m視頻下載 | 69266ms | 36144ms |
| 3個(gè)2g視頻下載 | 192315ms | 138215ms |
| 25個(gè)小文件刪除 | 10517ms | 62ms |
| 318個(gè)圖片刪除 | 12828ms | 811ms |
| 3個(gè)700m視頻刪除 | 10286ms | 150ms |
| 3個(gè)2g視頻刪除 | 10594ms | 255ms |
單從測(cè)試結(jié)果來(lái)看,無(wú)論是在上傳、下載還是刪除上,HDFS對(duì)比FastDFS差距還是比較大的。在小文件的上傳上,HDFS的318個(gè)小圖片總計(jì)200多mb的上傳耗時(shí)和3個(gè)700m視頻總計(jì)2.2g的上傳耗時(shí)居然是差不多的。
對(duì)測(cè)試結(jié)果的一些猜想和認(rèn)識(shí)
1、 FastDFS客戶端底層連接服務(wù)端使用的是Socket,本身速度就要快很多。
2、 HDFS在做刪除測(cè)試時(shí),明顯較慢的地方是在創(chuàng)建到服務(wù)端的連接上,實(shí)際刪除文件的速度很快。由于每次測(cè)試都需要先創(chuàng)建到服務(wù)端的連接,HDFS在這塊消耗較大,在實(shí)際場(chǎng)景下,差距應(yīng)該沒(méi)有這么大。
3、 兩者的適用場(chǎng)景確有不同,FastDFS更適合小文件的高效存取,而HDFS更適合超大文件上傳后使用Mapreduce去做大數(shù)據(jù)處理。
4、 HDFS的部分從節(jié)點(diǎn)沒(méi)有開(kāi)啟,不知道會(huì)不會(huì)影響文件的上傳、下載效率。
5、 個(gè)人的機(jī)器配置有限,硬盤(pán)空間也有限,不知道在更大級(jí)別的文件上傳下載效率上,HDFS對(duì)比FastDFS會(huì)有如何的結(jié)果。
轉(zhuǎn)載于:https://my.oschina.net/u/126298/blog/818316
總結(jié)
以上是生活随笔為你收集整理的HDFS和FastDFS的上传、下载效率对比测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: QTableWidget 合并单元格
- 下一篇: 英语单词学习笔记