在amazonemr中设置配置单元属性?

hjzp0vay  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(399)

我正在尝试使用amazonemr运行一个配置单元查询,并试图让apachetez也使用它,据我所知,这需要设置 hive.execution.engine 属性到 tez 根据Hive网站?
我知道可以用 set hive.{...} 通常,或者在 hive-site.xml ,但我不知道这两个在amazon emr中是如何进行交互的。
那么:在amazonemr中有没有设置配置单元配置属性的方法,如果有,如何设置?
谢谢!

k10s72fa

k10s72fa1#

您可以通过两种方式完成此操作:
1) 直接在单个配置单元脚本(.hql文件)中
只需将属性放在配置单元hql脚本的开头,例如:

set hive.execution.engine=tez;
CREATE TABLE...

2) 通过应用程序配置
创建emr集群时,可以指定在整个集群生命周期内工作的配置单元配置。这可以通过aws管理控制台或aws cli实现。
a) aws管理控制台
打开aws emr服务并单击create cluster按钮

单击顶部的“转到高级选项”

请确保在应用程序中选择hive,然后输入如下所示的json配置,您可以在其中找到您通常拥有的所有属性 hive-site 在xml配置中,我突出显示了tez属性作为示例。您可以选择从s3路径加载json。

b) aws客户端
如这里详细说明的,您可以在创建集群时使用标志指定配置单元配置 --configurations ,如下所示:

aws emr create-cluster --configurations file://configurations.json --release-label emr-5.9.0 --instance-groups InstanceGroupType=MASTER,InstanceCount=1,InstanceType=m4.large InstanceGroupType=CORE,InstanceCount=2,InstanceType=m4.large --auto-terminate

json文件的内容与上面管理控制台示例中显示的内容相同。
同样,您可以选择指定s3路径:

--configurations https://s3.amazonaws.com/myBucket/configurations.json
xnifntxz

xnifntxz2#

amazonelasticmapreduce(emr)是一种自动部署普通hadoop发行版的方法。通常可以在hadoop和hive上运行的命令也可以在emr下运行。
您可以交互地(通过登录主节点)或通过脚本(作为作业“步骤”提交)执行配置单元命令。
您将负责在amazonemr上安装tez。我找到了这个论坛帖子:电子病历上的tez

相关问题