分析Pig / Hive编译器生成的Map-Reduce作业

时间:2013-04-11 15:38:38

标签: hadoop hive apache-pig

无论如何都要查看Pig和Hive生成的Map-Reduce作业的代码?

我理解使用Hive,我可以查看抽象语法树,但似乎无法访问MR作业的实际Java代码。我错了这个假设吗?

2 个答案:

答案 0 :(得分:4)

Pig和Hive不会生成任何Java代码,而是计划。可以使用shell中的explain命令查看该计划。从SQL生成Java代码的一种方法是使用YSmart。请注意,Hive中发生了很多changes以使其更快。

答案 1 :(得分:0)

您可以自行下载和构建源代码。

然后使用像eclipse这样的java IDE,你可以远程调试你可以检查代码。虽然您可能没有所有依赖项并且可能无法检查所有对象,但您可以比Explain函数更详细地查看计划。

要允许远程调试,请将debug参数添加到hadoop bash脚本中:

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=1044