Hadoop HPROF 的使用
来源:互联网 发布:误入网络传销怎么办 编辑:程序博客网 时间:2024/04/30 23:49
我们编写的MapReduce程序不一定都是高效的,我们需要确定MapReduce的瓶颈在什么地方。Hadoop框架提供对HPROF的支持,HPROF能够跟踪CPU、堆的使用以及线程的生命周期,对于确定程序的瓶颈能够提供很大的帮助。
为了使用HPROF我们需要在JobConf中进行一些设置,具体操作如下:
JobConf jobConf = new JobConf(conf);
jobConf.setProfileEnabled(true);//开启HPROF
jobConf.setProfileParams("-agentlib:hprof=depth=8,cpu=sampl es,heap=sites,force=n,"+ "thread=y,verbose=n,file=%s");
//这里面8指堆栈调用深度,可以由用户指定
jobConf.setProfileTaskRange(true, "0-5");
//需要profile的Map Task的ID
jobConf.setProfileTaskRange(false, "0-5");
//需要profile的Reduce Task的ID
通过上面的设置,就可以开启HPROF。MapReduce Job完成后可以在提交作业的目录下看到多个Profile文件。打开每一个profile文件,在文件的最底部我们可以看到最重要的两个统计,一个是对象所占用的内存,一个是堆栈调用所消耗的时间。
内存对象统计以及产生该对象的堆栈调用(由大到小排序)
堆栈调用所消耗时间的排序(由大到小排序)
下面是排名第一的303703的堆栈调用,基本可以看出函数调用的顺序,如下图所示:
转自:http://blog.csdn.net/zuochanxiaoheshang/article/details/8996162
- Hadoop HPROF 的使用
- Hadoop HPROF 的使用
- Hadoop HPROF 的使用
- Hprof使用及在Hadoop中MR任务使用
- Hprof使用及在Hadoop中MR任务使用
- Hprof使用及在Hadoop中MR任务使用
- Hprof使用及在Hadoop中MR任务使用
- Hprof使用及在Hadoop中MR任务使用
- hadoop中使用hprof工具进行性能分析
- 基于hprof的Android 内存使用分析
- 使用adb抓取进程的hprof
- HPROF:Java程序的内存及CPU使用分析工具
- 使用MAT的命令行工具分析hprof文件
- Hprof
- 11使用mat进行分析hprof文件
- Android 内存使用hprof文件打开方法
- Android 内存使用hprof文件打开方法
- Android 内存使用hprof文件打开方法
- 关于半路新进项目 项目解读个人见解
- ffmpeg视频解码分析
- 模仿String.indexOf,判断一个字符串是否包含另一个字符串
- VMWare不能安装64位操作系统原因探析
- CnComm串口通讯库v1.5 文档、范例的下载链接
- Hadoop HPROF 的使用
- java代码生成带图片的二维码
- Mac下SVN上传.a静态库文件
- Windows环境下PHP开发环境搭建 - 图文完全教程
- 守护进程(涉及到关闭文件描述符的问题)
- 在C#使用文件监控对象FileSystemWatcher 实现数据同步
- java异常处理机制
- 分享下3个连续重复单拼未被注册的域名
- Linux操作系统下三种配置环境变量的方法