tencent cloud

文档反馈

配置 Hive 执行引擎

最后更新时间:2024-10-30 11:34:29
    Hive 支持 MapReduce、 Tez、 Spark 作为执行引擎,弹性 MapReduce 中默认为 MapReduce ,本文为您介绍如何在 Hive 中配置执行引擎。
    一般情况下建议您使用执行引擎 Tez 替代 MapReduce,这样您会获得更好的计算效率。

    开发准备

    确认您已经开通了腾讯云,并且创建了一个 EMR 集群,详情参考创建集群
    在创建 EMR 集群时在软件配置界面选择 Hive 组件,如果需要切换 Tez 或 Spark 执行引擎,在创建集群时需要勾选对应组件。

    配置引擎

    登录 Hive 客户端,具体操作参考 Hive 连接方式,Hive 的执行引擎由 hive.execution.engine 参数配置,默认执行引擎为 mr,执行如下命令可查看当前执行引擎:
    hive> set hive.execution.engine;
    hive.execution.engine=mr

    在命令行中切换执行引擎

    通过以下指令可以修改本次客户端会话中的执行引擎 。
    修改执行引擎为 Tez:
    hive> set hive.execution.engine=tez;
    修改执行引擎为 Spark:
    hive> set hive.execution.engine=spark;
    执行完成后可以输入以下命令进行验证:
    hive> set hive.execution.engine;
    返回信息为您设置的执行引擎则说明配置成功。
    说明:
    以上切换执行引擎的操作只对单个客户端会话生效,由其他客户端进入或者退出后重新连接会恢复默认执行引擎。

    在配置文件中切换执行引擎

    全局切换默认执行引擎可通过 EMR 控制台 集群服务 > HIVE > 配置管理 页面,找到 hive-site.xml 配置文件,设置以下参数值:
    修改执行引擎为 Tez:
    hive.execution.engine = tez
    修改执行引擎为 Spark:
    hive.execution.engine = spark
    执行保存 保存配置 > 保存并下发,重启 HiveServer2,执行完成后即可修改 Hive 的默认执行引擎。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持