自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Hbase和Hadoop操作文件性能測試

開發(fā) 項目管理 Hadoop
Hbase和Hadoop相信大家應(yīng)該聽說過,那么你知道Hbase和Hadoop操作文件的性能嗎,這里就向大家介紹一下如何測試Hbase和Hadoop操作文件的性能,歡迎大家一起來學(xué)習(xí)。

本節(jié)向大家介紹一下測試Hbase和Hadoop操作文件的性能的方法,主要有六個方面的內(nèi)容,希望通過本節(jié)簡單的介紹大家能夠掌握測試Hbase和Hadoop操作文件的性能的方法,下面就讓我們一起來學(xué)習(xí)吧。

測試Hbase和Hadoop操作文件的性能

1:單線程hbase的文件存入

StringparentPath="F:/pic/2003-zhujiajian";
File[]files=getAllFilePath(parentPath);
HBaseConfigurationconfig=newHBaseConfiguration();
HTabletable=newHTable(config,newText("offer"));
longstart=System.currentTimeMillis();
for(Filefile:files){
if(file.isFile()){
byte[]data=getData(file);
createRecore(table,file.getName(),"image_big",data);
}
}
longend=System.currentTimeMillis();
System.out.println("timecost="+(end-start));
108037206bytes,303個fileswritefromlocalwindowstoremotehbase,cost23328or21001milliseconds

2:單線程hadoop的文件存入

Configurationconf=newConfiguration();
FileSystemfs=FileSystem.get(conf);
Pathsrc=newPath("F:/pic/2003-zhujiajian");
Pathdst=newPath("/user/zxf/image");
longstart=System.currentTimeMillis();
fs.copyFromLocalFile(src,dst);
longend=System.currentTimeMillis();
System.out.println("timecost="+(end-start));
108037206bytes,303fileswritefromlocalwindowstoremotehdfs,cost26531or32407milliseconds

3:單線程hbase的文件讀取

108037206bytes,303filesreadfromhdfstolocalcost479350milliseconds

4:單線程hadoop的文件讀取

108037206bytes,303filesreadfromhdfstolocalcost14188milliseconds

5:深入測試Hbase和Hadoop操作文件性能

取幾個文件對比
fileSize(byte)hdfstime(ms)hbasetime(ms)
12341140131314688
708474634359
82535153907
5529616125

6思考

測試Hbase和Hadoop操作文件性能期間發(fā)生了一個regionoffline的錯誤,重啟服務(wù)也還是報錯,后然重新formatnamenode,deletedatanode上數(shù)據(jù),重啟發(fā)現(xiàn)還有datanode沒有起來,ssh上去發(fā)現(xiàn)java進程死了
浪費了1個多小時,仔細(xì)想了一下HTable分散到各個HRegionServer上的各子表,一臺datanode掛了,當(dāng)有數(shù)據(jù)請求時,連不上,所以報regionoffline錯誤

為什么hbase讀取的performance那么差?我單個讀取11m的文件需要14000milliseconds,而hdfs真?zhèn)€文件目錄的讀取才14188milliseconds
DBMSorHBase-butdousallafavorandjustkeepthepathinthemetadata,看來,hbase不合適存放二進制文件,存放圖片這樣的application還是hdfs更合適了。

a:重新測試了幾遍,包括重啟hbase,hdfs,hbase的讀取速度還是和原先沒大差別

b:刪除原有數(shù)據(jù),重新寫入后,再測試讀發(fā)現(xiàn),小文件的讀取效率搞了很多
fileSize(byte)1(ms)2(ms)3(ms)
12341140117501110911718
708474625610672
82535787878
55296476247

這樣就是說讀cache有較大的性能提升,在data數(shù)量不是非常大的時候,瓶頸是在讀取速度上,100k一下的數(shù)據(jù)讀取效率還是可以的,花費時間基本上和要讀取的data的長度成正比
但是之前的效率為什么沒有變?難道不能cache從磁盤讀取的數(shù)據(jù)?
然后試著讀取了最先放入的一批文件中的幾個,現(xiàn)在還是很慢,重復(fù)b的操作后效率提升了。原因可能是系統(tǒng)在創(chuàng)建row'sclunmdata的時候打上了cache標(biāo)志,cache適合clunm系統(tǒng)綁定在一起的,hbase啟動的時候會把打了cache標(biāo)志的colunm數(shù)據(jù)讀到memory中.
所以在我執(zhí)行altertableofferchangeimage_bigIN_MEMORY之前所創(chuàng)建的數(shù)據(jù)都沒有cache標(biāo)志,此cache不是像其他的cache,啟動的時候不做load,訪問后再cache,這樣一來,cache的數(shù)據(jù)愈多必然造成啟動速度的加慢。本節(jié)關(guān)于測試Hbase和Hadoop操作文件的性能介紹完畢,請關(guān)注本節(jié)其他相關(guān)報道。
 

【編輯推薦】

  1. Hdoop/Hbase文件配置方法詳解
  2. HadoopHBase實現(xiàn)配置簡單的單機環(huán)境
  3. Hadoop集群與Hadoop性能優(yōu)化
  4. Hadoop 從Yahoo向Google的技術(shù)轉(zhuǎn)折
  5. 深入剖析Hadoop HBase

 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2009-12-16 11:04:51

Ruby操作文件權(quán)限

2021-04-05 17:22:13

Lua文件數(shù)據(jù)編程語言

2010-06-04 11:00:27

hadoop性能優(yōu)化

2011-12-29 09:03:14

VIM

2020-11-19 10:30:28

Linux

2011-08-29 10:15:13

FacebookHadoopHBase

2009-08-19 17:44:15

C#操作文本文件

2009-10-29 17:15:26

VB.NET控件

2009-08-20 09:15:20

C#操作文本文件

2010-03-18 17:43:46

python 編程語言

2023-02-06 09:34:00

JavaHutool操作文件

2009-08-20 10:17:27

C#操作文本文件

2010-06-03 13:08:51

2009-08-20 09:58:06

C#操作文本文件

2010-01-11 17:05:32

VB.NET操作文本文

2011-08-01 09:39:43

2011-07-20 14:29:33

HBase

2017-01-17 09:38:52

ZooKeeperHadoopHBase

2010-03-23 15:52:43

Python操作文件

2010-05-24 14:59:29

Hadoop集群
點贊
收藏

51CTO技術(shù)棧公眾號