默认hive on spark是禁用的,需要在Cloudera Manager中启用。
1.登录CM界面,打开hive服务。
2.单击 配置标签,查找enable hive on spark属性。
3.勾选Enbale Hive on Spark(Unsupported),并保存更改。
4.查找Spark on YARN 服务,并勾选保存。
5.保存后,重新部署下客户端使其生效。
在Spark上配置Hive
最低要求角色: 配置器(也由群集管理员 提供,完全管理员)要配置Hive在Spark上运行,请执行以下两个步骤:
- 配置Hive客户端中所述使用Spark执行引擎配置单元执行引擎。
set hive.execution.engine=spark;
set hive.execution.engine;
- 确定Hive使用的Spark服务。Cloudera Manager自动将其设置为已配置的MapReduce或YARN服务以及已配置的Spark服务。请参阅配置Spark服务的Hive依赖关系。
配置Spark服务的Hive依赖关系
默认情况下,如果Spark服务可用,则配置Spark服务上的Hive依赖项。要更改此配置,请执行以下操作:
- 在Cloudera Manager管理控制台中,转至Hive服务。
- 单击配置选项卡。
- 在YARN服务上搜索Spark。要配置Spark服务,请选择Spark服务名称。要删除依赖项,请选择none。
- 单击保存更改。
- 转到Spark服务。
- 将Spark网关角色添加到运行HiveServer2的主机。
- 点击Cloudera Manager徽标返回主页。
- 单击任何陈旧的服务旁边的图标以调用集群重新启动向导。
- 单击重新启动旧服务。
- 单击立即重新启动。
- 单击完成。
- 在Hive客户端中,配置Spark执行引擎。
参考:https://www.cloudera.com/documentation/enterprise/latest/topics/admin_hos_oview.html#concept_i22_l1h_1v__section_k22_l1h_1v