Hbase壓力測試


PerformanceEvaluation是HBase自帶的性能測試工具,該工具提供了順序讀寫、隨機讀寫、掃描等性能測試功能。本文簡要介紹HBase PerformanceEvaluation的使用方法。


5分鍾學會使用HBase PerformanceEvaluation-愛財經網





准備工作




1HDFS正常啟動:start-dfs.sh
2Mapreduce\\yarn正常啟動: start-yarn.sh
3HBase正常啟動: start-hbase.sh




運行




1、進入hbase bin目錄:cd {mr}/hbase/bin;


2、輸入hbase org.apache.hadoop.hbase.PerformanceEvaluation 查看PE幫助信息,如下圖:
5分鍾學會使用HBase PerformanceEvaluation-愛財經網



寫操作

1)  順序寫:sequentialWrite
例如,預分區100 regions,100線程並發,順序寫1億條數據:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 --presplit=100 sequentialWrite 100


注意事項:
a.  hbase PE默認使用mapreduce作業進行讀寫掃描數據,如果使用多線程/客戶端並發來代替mapreduce作業,需要加上選項 --nomapred


b.  設置每個客戶端處理多少行記錄,使用參數 --rows,例如 --rows=1000000,即每個線程/客戶端處理1000000行記錄;


c.  --presplit參數,只有在寫數據時使用,讀表時使用參數--presplit,會導致之前寫的表數據被刪除;



d.  最后一個參數100即為100個線程/客戶端並發。


2)  隨機寫:randomWrite
例如,隨機寫1億條數據:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 --presplit=100 randomWrite 100


讀操作

1)  順序讀:sequentialRead
例如,順序讀1億條數據:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 sequentialRead 100


2)  隨機讀:
例如,隨機讀1億條數據:
hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100000 randomRead 100


掃描操作

掃描:scan\\ scanRange10\\ scanRange100\\ scanRange1000\\scanRange10000


hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000000 scan 100


hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100000 scanRange10 100


hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=10000 scanRange100 100


hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=1000 scanRange1000 100


hbase org.apache.hadoop.hbase.PerformanceEvaluation--nomapred --rows=100 scanRange10000 100


注意事項:
Hbase讀\\掃描表數據,會優先讀取內存數據,所以在寫表操作結束后,可手動對表進行一次flush操作,以此清空內存中memstore數據;並且每次讀\\掃描測試前,重啟hbase,把緩存清掉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM