Hadoop unixODBC isql设置配置单元配置变量
我与hive有unixODBC连接:Hadoop unixODBC isql设置配置单元配置变量,hadoop,hive,odbc,unixodbc,isql,Hadoop,Hive,Odbc,Unixodbc,Isql,我与hive有unixODBC连接: isql -v Hive +---------------------------------------+ | Connected! | | | | sql-statement | | help [tablename] | | quit
isql -v Hive
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
例如,选择install\u dt,从device\u metrics.sometable中计算(1),其中install\u dt>='2020-04-10'按install\u dt分组代码>
返回预期结果
我想运行此查询,但需要一些配置单元变量设置。例如,我想将执行引擎设置为mr not default tez。直接连接到配置单元时,在odbc之外,我只需执行以下操作:
set hive.execution.engine=mr;
select ... [my query to run with mr here...
使用isql,我尝试了以下方法:
SQL> set hive.execution.engine=mr;
SQLRowCount returns -1
我不确定SQLRowCount返回的是-1,但我猜这意味着要么是错误,要么是没有行受到影响
无论哪种方式,在尝试配置此设置后,我尝试再次运行我的选择查询:
SQL> set hive.execution.engine=mr;
SQLRowCount returns -1
select install_dt, count(1) from device_metrics.sometable where install_dt >= '2020-04-10' group by install_dt;
当我再看我们的hadoop运行应用程序页面时,我可以看到我第二次尝试查询,但它仍然在tez中运行。预期和期望的行为是,它将与mr
是否可以使用unixODBC连接配置配置单元设置?如果是这样,我怎么能告诉hive使用mr引擎而不是tez