Hive-如何知道我当前正在使用哪个执行引擎

Ind*_*our 2 configuration hadoop hive tez

我想以某种方式自动化我的Hive ETL工作流,由于内存限制,我需要基于执行引擎(Tez或MR)执行Hive作业。

您是否需要帮助,因为我想在我目前正在处理的执行引擎的整个工作流程中进行交叉检查。

提前致谢。

shr*_*yog 6

执行引擎由hive.execution.engine属性控制。您可以使用在Hive Shell上查看此配置的当前值SET hive.execution.engine;

要进行设置,请使用SET hive.execution.engine=tez;

如果要以编程方式获取此值,则必须使用HiveClient,它支持JDBC,Java,Python,PHP,Ruby,C ++等多种方式。Checkout https://cwiki.apache.org/confluence/display/Hive / HiveClient

如果使用Java的JDBC客户端,则查询字符串将为空,但"SET hive.execution.engine;"将返回包含所需值的ResultSet。