[發明專利]非侵入式Hadoop應用性能分析裝置和方法在審
| 申請號: | 201710255494.1 | 申請日: | 2017-04-19 |
| 公開(公告)號: | CN107423203A | 公開(公告)日: | 2017-12-01 |
| 發明(設計)人: | 劉鵬;王杰瑞;華幸成 | 申請(專利權)人: | 浙江大學 |
| 主分類號: | G06F11/34 | 分類號: | G06F11/34 |
| 代理公司: | 杭州中成專利事務所有限公司33212 | 代理人: | 金祺 |
| 地址: | 310058 浙江*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 侵入 hadoop 應用 性能 分析 裝置 方法 | ||
技術領域
本發明涉及大數據處理分析領域,具體涉及一種非侵入式Hadoop應用性能分析裝置和方法。
背景技術
在大數據時代,越來越多的公司、研究機構及政府部門都在源源不斷地從互聯網、傳感器網絡或社交網絡中收集海量的數據。從海量的數據中挖掘出有效的信息目前正得到越來越多的關注。Hadoop是Apache軟件基金會中的一個開源分布式數據處理框架,也是當前使用最為廣泛的大數據分析與處理平臺。由于Hadoop具有高可擴展性、容錯處理機制以及數據并行處理等特性,目前已經被很多公司和學術機構采用。
得益于Hadoop提供的基礎數據處理平臺,用戶可以基于MapReduce編程模型快速地開發海量數據處理應用,并可以充分地利用Hadoop所提供的數據高度并行處理的特性。這使得處理海量數據變得高效且易于操作。用戶可以從分布式數據處理的很多混亂而復雜的細節中抽離出來,諸如數據分割、任務分布、任務調度、負載均衡、容錯處理、節點通信等。用戶只需要關注數據處理的業務邏輯,而無須關注更底層的實現細節。這一舉措雖然簡化了用戶編寫分布式數據處理應用的復雜度,但是由于Hadoop框架隱藏了底層的實現細節,卻也使得用戶很難理解這些應用在分布式集群中的運行時行為。這樣所帶來的后果在于,用戶可以基于Hadoop簡單而快速地編寫處理海量數據的應用,但是對這些應用的性能進行分析卻難以著手。
目前,分析Hadoop應用程序運行性能的主要手段是通過監控系統的資源利用情況(如CPU、內存、磁盤的利用率)或者通過查看Hadoop的系統日志來了解應用程序的運行時的狀態。但是,這種方式只能夠獲取到Hadoop應用運行時系統的整體概況,無法動態獲取應用程序運行時較為關鍵應用級的性能數據。另外,Hadoop框架支持在指定的任務中使用傳統的Java性能分析工具,如HPROF[1],但這會帶來較高的性能開銷,因而通常只能用于少量的子任務中。隨著分布式系統及大數據應用的不斷發展,陸續也有一些分布式系統的跟蹤框架被提出來,如Magpie[2],X-Trace[3]及Dapper[4]等。這類系統的設計目標是將追蹤元數據作為請求在系統中進行傳播,進而對性能事件進行追蹤。但是,如果要使用這一類系統對Hadoop應用進行動態追蹤,需要對Hadoop應用的源碼及消息模式進行修改,難以直接在生產環境中加以使用。
動態獲取Hadoop應用運行時的性能數據并進行性能分析比較復雜且難度較大。其原因主要如下:首先,為了應對大規模數據的分析與處理,基于Hadoop平臺編寫的大數據應用通常都運行在由很多臺機器組成的分布式集群中,分布式集群中的多個節點需要協同進行工作。其次,一個應用在提交至Hadoop平臺中運行時,為了充分地達到并行處理的效果,該作業會被分解為大量的Map與Reduce子任務,每個子任務都由單獨的進程來完成。在Hadoop2.0之后引入了新的資源管理系統YARN,YARN通過將計算資源封裝為容器的方式動態分配給子任務,底層的資源管理和分配對應用而言是透明的。此外,在對Hadoop應用進行性能分析時為了保證其可用性,該方法應該具備非侵入的特征,即不修改既有的Hadoop的部署環境和運行方式,且引入的性能開銷不應該影響到應用程序的正常運行。
發明內容
本發明要解決的技術問題是提供一種非侵入式Hadoop應用性能分析裝置和方法,本發明能夠動態獲取應用程序的運行時信息并重構出高層的應用運行時數據流模型和行為特性,幫助用戶了解Hadoop應用程序的性能,為應用程序的性能調優指明方向。
為了解決上述技術問題,本發明提供一種非侵入式的Hadoop應用性能分析裝置,包括依次信號相連的動態追蹤模塊,數據聚合模塊和數據分析模塊;
所述動態追蹤模塊,用于為子任務添加JVM代理程序,在子任務啟動時通過二進制代碼動態插樁的方式動態注入字節碼,對子任務的性能事件進行動態追蹤,并將性能事件記錄在性能日志文件中;
所述數據聚合模塊,用于將集群所有節點中由動態追蹤模塊所記錄的性能日志文件進行匯總處理;
所述數據分析模塊,用于對通過數據聚合模塊所匯總處理后得到的性能事件進行分析,生成應用程序性能分析結果。
作為本發明的非侵入式的Hadoop應用性能分析裝置的改進:所述數據聚合模塊包括依次信號相連的數據轉發模塊、數據收集模塊和數據存儲模塊;所述數據轉發模塊與動態追蹤模塊信號相連;
數據轉發模塊在集群的所有從節點中運行,用于將當前節點中由動態追蹤模塊所記錄的性能日志文件轉發到主節點中;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江大學,未經浙江大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710255494.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種提示方法及移動終端
- 下一篇:應用程序的操作日志的處理方法、裝置以及終端





