Apache HiveQL 将它生成的 Map/Reduce 代码存储在哪里?
Hive并没有真正生成Map/Reduce代码,因为它是由Hive查询规划器解释的。
如果要了解 Hive 查询生成的操作类型,可以在查询前面加上 EXPLAIN
,您将看到抽象语法树、依赖项关系图和每个阶段的计划。有关EXPLAIN
的更多信息,请点击此处。
如果你真的想看到一些 Map/Reduce 作业,你可以试试 YSmart,它将你的 HiveQL 语句转换为有效的 Java Map/Reduce 代码。我没有亲自使用它,但我知道有人对它说了好话。
似乎 Hive 每次执行查询都会更改此方法。
http://hive.apache.org/docs/r0.9.0/api/org/apache/hadoop/hive/ql/exec/Task.html#execute(org.apache.hadoop.hive.ql.DriverContext)