環境準備
- 工具準備:ycsb
- 數據準備:usertable 100 個region 並灌入數據。
hbase shell>n_splits=100
hbase shell> create 'usertable',{NAME=>'cf',DATA_BLOCK_ENCODING=>'DIFF',COMPRESSION=>'LZO'},{SPLITS => (1...n_splits).map{|i| "user#{1000+i*(9999-1000)/n_splits}"}}
nohup bin/ycsb load hbase12 -P workloads/sync_batch_w2 -threads 64 -p columnfamily=cf -p fieldlength=16 -p hdrhistogram.percentiles=95,99,99.9,99.99 >> result.txt &
- 命令準備:
- 只讀 nohup bin/ycsb run hbase12 -P workloads/nocache_scan_r2 -threads 64 -p columnfamily=cf -p fieldlength=16 -p hdrhistogram.percentiles=95,99,99.9,99.99 >> result.txt &
- 只寫 nohup bin/ycsb run hbase12 -P workloads/sync_batch_w2 -threads 64 -p columnfamily=cf -p fieldlength=16 -p hdrhistogram.percentiles=95,99,99.9,99.99 >> result.txt &
- 讀寫 nohup bin/ycsb run hbase12 -P workloads/mix_rw_1 -threads 64 -p columnfamily=cf -p fieldlength=16 -p hdrhistogram.percentiles=95,99,99.9,99.99 >> result.txt &
登錄到服務器,每一臺機器上部署ycsb,每一臺服務器上同時執行只讀的壓測命令3次,也就是開3個實例,那麼一共開9個實例,每個實例64併發壓測。
收集壓測日誌中的吞吐與rt,以及系統性能指標: