【问题标题】:Persistance of parameter in Hive HQL?Hive HQL 中参数的持久性?
【发布时间】:2020-06-03 17:43:40
【问题描述】:

我使用带有 Hive 的集群。

集群具有特定的 tez continer 大小(通过 Ambari 设置)。

但是,我们有一个特定的 Hive 操作,它处理的数据比另一个操作更多。它是唯一的。

因此,我们计划仅针对此过程更改 tez 容器大小。这带来了两个问题:

  • 是否可以在 HQL 中设置 hive.tez.container.sizehive.tez.java.opts(如 set hive.tez.java.opts=XXX)?
  • 此操作的范围和持续性如何?如果我为一个查询设置此值,我是否必须将其设置回原始值,还是仅针对此查询/tez 会话/其他考虑?

【问题讨论】:

    标签: hadoop hive apache-tez


    【解决方案1】:

    您可以像这样在脚本中设置这些参数:

    set tez.am.resource.memory.mb=8192;
    set tez.am.java.opts=-Xmx6144m;
    set tez.reduce.memory.mb=6144;    
    set hive.tez.container.size=9216;   
    set hive.tez.java.opts=-Xmx6144m;
    

    如果在查询之前没有重新定义,范围将是整个会话。如果您在单个脚本中有许多查询,并且每个查询需要不同的参数,请在每个查询之前设置参数。 map1和map2等不同的顶点不能设置不同的参数。

    阅读本文:Demystify Apache Tez Memory Tuning Step by Step

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-17
      • 1970-01-01
      • 2015-06-17
      • 2017-01-15
      • 1970-01-01
      • 1970-01-01
      • 2015-12-23
      相关资源
      最近更新 更多