怎樣選擇Hadoop的基準測試
阿新 • • 發佈:2019-01-07
我們部署好Hadoop叢集,在測試和學習環境下對通過引數配置來提供叢集資源的利用效率重視不夠,但是在實際工作環境下這一點相當重要,這直接影響線上任務的執行時間,系統的吞吐量和資源利用率等。
怎麼才能得到符合實際工作需要的最佳引數配置呢?一般是基於在各種情況下對叢集效能進行測試得出,這稱之為benchmark。伴隨參與Hadoop商業化的廠家不斷湧現的情況下,各種benchmark工具或者套件也隨之產生出來,那麼,遴選出一種適合自身需求的工具也就顯得重要起來。
針對Hadoop叢集效能測試的工具,主要包括GridMix、TPC-DS、YCSB、Hibench、BigDataBench、BigBench等。Intel設計開發的Hibench成為主要的選擇,針對Hadoop的基準測試,通過模擬叢集工作負載,對它的HDFSIO和MapReduceCPU利用率進行考察,並且通過相關引數調整來對比效能的變化從而達到優化的目的。
Hibench所包含的負載測試用例主要有Sort(IO密集型)、WordCount(CPU密集型)、TeraSort(兩者兼有),這些基本上繼承了Apache社群早已有之的用例。當然,它還包括搜尋引擎和機器學習方面的負載測試。
當然,也應該選擇其它的方案來輔助進行負載測試以進一步確定優化方案是否合理。BigDataBench選用了SQL作為測試工具,而Hive是基於Hadoop的資料倉庫解決方案,提供了類似SQL的工具,可以通過Hive執行ScanQuery、AggregationQuery、JoinQuery和ExternalScript Query等檢查Hadoop系統性能。