本站分享:AI、大数据、数据分析师培训认证考试,包括:Python培训Excel培训Matlab培训SPSS培训SAS培训R语言培训Hadoop培训Amos培训Stata培训Eviews培训

Hadoop分布式程序的调试方法_hadoop程序怎么调试

hadoop培训 cdadata 3210℃

Hadoop分布式程序的调试方法_hadoop程序怎么调试

了解一个系统的内部,我觉得最好的办法只有两个:
1. 找系统的开发设计者仔仔细细的问,
2. 自己跟踪调试系统。
估计要找到 cutting 详细聊不太可能,那只有第二个办法可以采用了,呵呵。而且当 hadoop 出现一些莫名问题的时候,跟踪调试程序也是最后的无奈选择。
工欲善其事,必先利其器。我选择的工具和环境配置如下:
1. 开发机 OS linux (X 选择 gnome 或者 kde 都可以 )
2. 远程控制软件 tightvnc 客户端和服务器端
3. 开发调试 IDE 工具 Eclipse 和 vim
其实要调试 hadoop 分布式程序和进行 java 远程调试是一样的,为什么呢?因为他们就是一回事儿,哈哈!
1.        启动 Eclipse ,将 hadoop 程序装载到工程里面
2.        修改 bin/hadoop 代码加入 java 远程调试选项:
  HADOOP_OPTS=”$HADOOP_OPTS $HADOOP_TASKTRACKER_OPTS
  -agentlib:jdwp=transport=dt_socket,address=xxxx,server=y,suspend=y”
假设我们要调试 jobtracker 的代码,我们将 bin/hadoop 代码修改如下 :
elif [ “$COMMAND” = “tasktracker” ] ; then
  CLASS=org.apache.hadoop.mapred.TaskTracker
    HADOOP_OPTS=”$HADOOP_OPTS $HADOOP_TASKTRACKER_OPTS -agentlib:jdwp=transport=dt_socket, address=8083, server=y, suspend=y”
3.        启动 hadoop
4.        Eclipse 里面跟踪调试
a)          在 Debug configuration 里面新建一个 Java Remote Application
b)         设置断点
c)         启动分布式任务
d)         这个时候任务就会你设置的断点处,停下来让你进行接下来的调试跟踪

转载请注明:数据分析 » Hadoop分布式程序的调试方法_hadoop程序怎么调试

喜欢 (0)or分享 (0)