LinkedIn開源Dr. Elephant

jopen 8年前發布 | 7K 次閱讀 LinkedIn

LinkedIn開源Dr. Elephant

 

今天 LinkedIn 宣布開源 Dr. Elephant,Dr. Elephant 能夠很好地幫助用戶理解、分析和優化 Hadoop 和 Spark 的工作流。LinkedIn 在去年第八屆 Hadoop Summit 上第一次在社區呈現。

動機

Hadoop 是一個分布式數據存儲和大數據處理框架,體量大、組件復雜,因而每個組件的性能優化就顯得異常重要。在優化底層硬件資源,網絡架構,OS 和其它堆棧的同時,也需要對集群上運行的任務進行優化。

什么是 Dr. Elephant?

Dr. Elephant 是一個 Hadoop 和 Spark 的性能監控和調優工具。Dr. Elephant 能自動化收集所有指標,進行數據分析,并以簡單易用的方式進行呈現。Dr. Elephant 的目標是提高開發人員的開發效率和增加集群任務調試的高效性。Dr. Elephant 支持對 Hadoop 和 Spark 任務進行可插拔式、配置化以及基于規則的啟發式 job 性能分析,并且根據分析結果給出合適的建議來指導如何調優使任務更有效率。

為什么選擇 Dr. Elephant?

其它開源或者商用 Hadoop 優化工具都是收集系統資源指標和監控集群資源信息,關注點僅在于簡化 Hadoop 集群的發布和管理,而很少有工具是來幫助 Hadoop 優化任務流。這些工具不支持 Hadoop 集群的規模化和 Hadoop 框架的增長,而 Dr. Elephant 支持 Hadoop 生態的各種框架,并且很容易的擴展到新的框架,已經支持 Spark。Dr. Elephant 讓用戶更清晰的掌握 Hadoop 和 Spark 原理,并幫助其輕松的優化任務。

Dr. Elephant 如何工作?

Dr. Elephant 從 YARN Resource Manager 周期性獲取所有最近運行成功和失敗的應用列表,然后從 Job History Server 中攫取每個應用的元數據,包括 job counters、任務配置和任務數據。有了元數據后,Dr. Elephant 進行啟發式分析,并生成每個任務的診斷報告,從而進行相應的整體優化。Dr. Elephant 將會標記出五個等級問題嚴重性,指出潛在的性能問題。

LinkedIn開源Dr. Elephant

圖 1 Dr. Elephant 問題等級

LinkedIn開源Dr. Elephant

圖 2 Dr. Elephant 的面板

通過 Dr. Elephant 的 UI 查看數據面板,見圖2,這里顯示集群的相關統計信息,包括集群上運行的任務數,需要優化的任務數,以及基于啟發式分析發現的嚴重任務數。圖中是最近 24 小時的 Dr. Elephant 分析的所有最近的任務。

LinkedIn開源Dr. Elephant

圖 3 Dr. Elephant 的搜索頁

Dr. Elephant 提供一個搜索功能,幫助用戶通過任務 ID/應用 ID,執行 ID,任務類型,任務嚴重程度和任務完成時間等來搜索任務。

LinkedIn開源Dr. Elephant

圖 4 Dr. Elephant 任務頁面

當你點擊指定的搜索結果,會顯示完整的任務信息,并能查看相互引用的任務流。

LinkedIn開源Dr. Elephant

圖 5 Dr. Elephant 的工作流歷史

LinkedIn開源Dr. Elephant

圖 6 Dr. Elephant 的任務歷史

Dr. Elephant 的任務歷史和工作流歷史可以幫用戶比較前后執行的區別。Dr. Elephant 通過啟發式計算出每個任務執行的性能得分并作圖。這個圖表可以幫助用戶很直觀的分析哪個性能好。

家庭醫生

Dr. Elephant 在 LinkedIn 非常受歡迎,大家鐘愛其簡潔性。Dr. Elephant 通過簡單的診斷可以解決百分之八十的問題。Dr. Elephant 提供任務級別的建議幫助用戶去理解和優化 Hadoop 工作流。

Dr. Elephant 已經完全和 Hadoop 生態整合。在 LinkedIn,開發人員使用 Dr. Elephant 作為開發流程的一部分,線上任務強制達到綠色級別。

 

來自: InfoQ

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!