无论如何都要查看Pig和Hive生成的Map-Reduce作业的代码?
我理解使用Hive,我可以查看抽象语法树,但似乎无法访问MR作业的实际Java代码。我错了这个假设吗?
答案 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