问题标签 [tez]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
415 浏览

hive - 顶点重新运行失败

我正在尝试在使用 tez 的 EMR 上运行配置单元查询。我面临以下错误。我在 20 节点集群上运行此查询。我在查询下运行。

0 投票
1 回答
182 浏览

json - Hive 复杂数据类型查询

我正在尝试从源表中查询数据,但无法正确查看结果。

源表结构

我有JSON格式的数据。

我的 JSON 数据采用以下格式

根据我的表结构,我应该在结构中包含数组(结构)。但我所拥有的数据并非如此。我分别有 struct 和 array(struct) 。现在,当我查询此表时,我按预期获得了列 c1、c2、c3、s1、s2 的所有记录,但我没有得到 as1 和 as2 列,而是在输出中将temp2本身设为null。我在这里有什么遗漏吗。我应该有类似的数据struct<array<struct>>还是可以拆分struct并且array<struct>json serde在阅读时会小心

0 投票
0 回答
299 浏览

hadoop - Hive 的动态分区无法写入最终文件

我正在尝试将具有 1 个分区列的表中的数据加载到具有 2 个分区列的新表中,较新的分区列是第一个表中的常规列。

例如 create table 语句(为便于理解而简化和更改):

我有一个简单的插入查询,如下所示:

所以这一直运行并表示该工作已在终端和 Tez UI 中成功完成。即使在整个过程中,我也可以看到文件实际上填充在 S3 上的 tmp/staging 文件夹中,并具有所有正确的分区。但是,当它最终完成时,实际上没有写入任何文件,并且所有临时文件都被删除。

对分区进行硬编码(静态分区)有效,并且从 1 个分区列表到另一个 1 个分区列表的动态分区也有效。从 1 个分区的列表开始并尝试从第一个表派生第二个分区是行不通的。

0 投票
1 回答
65 浏览

hue - 在 Hue 源代码中的 HiveServerClient 中获取当前编辑器 id(doc id)的方法

当有多个 Hue 页面同时运行 tez 应用程序时,它有时会将同一个会话应用于两个不同的任务,这将导致它们接收到 KILL 信号而另一个抱怨当前应用程序主控正在被使用并重试. 我查看了代码,HiveServerClient._get_tez_session我认为问题在于busy_sessions检索方式,这不是线程安全的。因此,当几乎同时提交时,有可能将两个查询分配给同一个会话。

我想知道有没有办法从HiveServerClient._get_tez_session方法中获取当前的编辑器 ID(doc_id),所以我现在可以做一些黑客攻击来快速解决问题。谢谢。

0 投票
0 回答
631 浏览

hadoop - 支持 Tez 的抢占以及纱线 FairShare 调度程序?

我们最近一直在将我们的 10 节点集群从 MapReduce 切换到 Tez,从那时起我们就遇到了资源管理问题。似乎抢占没有按预期工作:

  1. 一项非常耗时的工作来了,它获得了所有免费资源
  2. 第二个作业到达并等待资源被作业 1 释放
  3. job2 在很长一段时间内获得的资源非常少(5%),并且增长非常缓慢,但大部分时间从未达到公平份额。

我假设 FairShare 纱线调度程序使用的抢占机制没有正常工作,并且只有在某些 job1 容器完成后才会将资源分配给 job2。

我查看了 Tez 文档,我认为 Tez 将使用容量调度程序作为事实上的调度程序开发,但找不到 FairShare 调度程序的任何帮助。

使用的一些 conf 变量可能会有所帮助: