2013-11-15 107 views
0

我在網站上搜索,發現了另一個問題,但沒有答案。YCSB瞭解輸出

我一個卡桑德拉集羣上執行YCSB工具,YCSB的輸出是:

[OVERALL], RunTime(ms), 302016.0 -> 05 mins 02 secs 

[OVERALL], Throughput(ops/sec), 3311.0828565374018 

[UPDATE], Operations, 499411 

[UPDATE], AverageLatency(us), 2257.980987603397 

[UPDATE], MinLatency(us), 389 

[UPDATE], MaxLatency(us), 169380 

[UPDATE], 95thPercentileLatency(ms), 4 

[UPDATE], 99thPercentileLatency(ms), 8 

[UPDATE], Return=0, 499411 

[UPDATE], 0, 50039 

[UPDATE], 1, 222610 

[UPDATE], 2, 138349 

[UPDATE], 3, 49465 

,並繼續就「直到數70.它是如何呢?有沒有運行這些操作的秒數?奇怪的是,從整體語音中可以看出,測試運行時間超過5分鐘。

謝謝你的時間!

回答

1

輸出指示

  • 總執行時間爲05分鐘02秒
  • 的平均吞吐量爲3311.0828565374018所有線程
  • 有499411個更新操作
  • 平均值,最小值,最大值,第99和第95百分位等待時間
  • 499411操作給出的返回碼爲零(全部成功,非零返回表示操作失敗)
  • 50039操作在不到1ms內完成。
  • 222610操作在1到2ms之間完成。
  • 138349操作在2至3ms之間完成。
  • ...等等......他們可能會高達1000ms。

也可以通過將-p timeseries.granularity=2000開關添加到ycsb命令來獲得延遲的時間序列。

的更多信息,the documentation

+0

感謝您的答覆可用,但我仍然不明白這怎麼可能,最運作,在不到10毫秒的完成,同時在5分鐘內整個測試!我的意思是,客戶執行的操作少於10毫秒嗎?事實上,你可以看到,99thPercentileLatency是8. 我希望我很清楚:P – user2867270

+0

默認的測試運行在一個線程中(除非你指定了'-threads'選項)。所以這些操作不會同時發生。此外,客戶端執行很多不影響基準的樣板任務,因此不計入計算中(例如,實例化類,執行實際計算不會影響延遲)。至於百分位數,我不確定它是如何計算的。 – Akshay

+0

完美,實際上我使用-s輸出來查看10秒的操作。最後一件事:我看到,總是使用ycsb工具,ycsb返回給我一個警告client.HConnectionManager $ HConnectionImplementation:失敗全部來自region = usertable,user5151590341071383779,1384956970306.c298f9ff82ff593e6d9a1895445c966f。,hostname = ip-10-253-27 -32,port = 60020 java.util.concurrent.ExecutionException:java.io.IOException:調用ip-10-253-27-32/10.253.27.32:60020本地異常失敗:org.apache.hadoop.hbase .ipc.HBaseClient $ CallTimeoutException:呼叫ID = 542,waitTime = 65285,rpcTimetout = 60000' 爲什麼? – user2867270