问题标签 [hiveql]
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.
hadoop - Hive QL / UDF / Impala 查询的包装器
我正在尝试编写一个可以被来自 Sql 背景的人轻松使用的包装器。我还没有开始这项工作,我想知道我应该采取什么方法。
这是问题陈述 - 如果有人在他们的 rdbms 数据上编写了很多本机 Sql,并且他们想切换到 hadoop,那么就会有很多问题。Hive 消除了在 hdfs 中构建表的一个主要问题。现在是查询部分——为此我们有不同的框架,但没有一个框架本身是完整的——比如一个可能很慢,而另一个可能缺乏功能。例如,有 Impala,有 Hive QL,但对于最终用户来说,没有 ONE 框架。我打算做这样的事情 - select(comma-separated string of column names, tableName).where(filter-expression)....
像用于 hdfs 的 Linq 之类的东西,它会找出执行 select(hive ql 或 Impala)的最佳方法,执行 where 子句的最佳方法等。
建议?想法?批判?
谢谢
hadoop - Hive:无法获得不同类别的总和
从 Hive,我试图从下面的简单表中获取结果
现在我想显示,
Custername, Prjtid, (Total number of billable), (total number of non-billable).
例子:
ABC, AB123, 40, 20
PQR, PQ123, 50, 20
我能够获得计费或不可计费但不能一起获得。
有人可以建议如何继续这种情况吗?
问候,
拉吉
hadoop - 在 Hive 中提取结构数组
我在蜂巢中有一个外部表
表的记录可能包含以下数据:
有谁知道是否有一种方法可以简单地从该记录中提取所有 productCategory 并将其作为 productCategories 数组返回而不使用explode。类似于以下内容:
或者我是否需要编写自己的GenericUDF,如果是这样,我不太了解Java(一个Ruby人),有人可以给我一些提示吗?我从 Apache Hive 阅读了一些关于 UDF 的说明。但是,我不知道哪种集合类型最适合处理数组,以及哪种集合类型最适合处理结构?
===
我通过写一个 GenericUDF 回答了这个问题,但我遇到了另外两个问题。这是在这个SO Question
hadoop - 如何在 Hive 中透视数据
如何在 HiveQL 中实现 PIVOT 功能。以下是 SQL 查询,请帮助我在 Hive 中实现这一点:
-- 期望输出: 定制产品数量 KATE VEG 2 KATE SODA 6 KATE MILK 1 KATE BEER 12 FRED MILK 3 FRED BEER 24 KATE VEG 3
hadoop - HiveQL 查询性能优化
随着 Hive 查询中 JOINS 数量的增加,查询分多个阶段运行,需要大量执行时间。如何提高查询性能。有需要设置的参数吗?
hadoop - Hive:使用不同的键连接两个表
我有两个如下表。基本上我想加入他们两个,并期望得到如下结果。
表 2 的前 3 行没有任何活动 ID,只是空的。
所有字段都是制表符分隔的。根据表 2,类别“33”具有三个描述。
我们需要使用“活动 ID”来获取“33”类别的结果,因为它有 3 个值。
谁能告诉我如何实现这个输出?
表格1
Empid 类别 ActivityID
44126 33 火车
44127 10 UFL
44128 12 TOI
44129 33 未指定
44130 15 微软
44131 33 好处
44132 43 好处
表 2:
类别 ActivityID Categdesc
10 可计费
12 计费
15 不可计费
33 训练训练
33 未指定替补席
33 好处 好处
43 好处
预期输出:
44126 33 培训
44127 10 可计费
44128 12 可计费
44129 33 长凳
44130 15 不可计费
44131 33 福利
44132 43 福利
hadoop - Hive:连接不同场景的表
我有一个关于在不同场景中加入表格的问题。请在下面找到示例表。
应重复预期表第 3-5 行的容量,因为表 2 没有这些字段。
谁能帮忙拿到预期的桌子?
表格1:
没有 ProjectID 容量
1 514 4
2 418 10
3 418 30
4 401 40
5 502 41
表2:
否 ProjectID 容量1 容量2
1 514 4 10
2 418 10 20
预期表:
否 ProjectID 容量1 容量2
1 514 4 10
2 418 10 20
3 418 30 30
4 401 40 40
5 502 41 41
hadoop - 在 hive 中动态删除分区
我在 hive 中有两个表,都由表示时间戳的字符串分区(我使用字符串而不是时间戳,因为我使用的是 Cloudera Impala 中的表,它不支持按时间戳分区的表)。
这些表用于在特定时间片中存储大量数据。第一个表包含较高时间粒度的最新数据,比如 1 分钟时间片,第二个表包含较低粒度的旧数据,比如 1 小时时间片。
所以我有一个查询,它总结了早于 1 分钟时间片的特定时间量的数据,以便我拥有 1 小时时间片的数据并将其与 1 小时时间片一起插入我的表中。
创建 1 小时时间片后,我想删除新的 1 小时时间片中包含的所有 1 分钟时间片。而且由于该表是由代表时间的字符串分区的,所以我可以删除相应的分区。
并知道我的实际问题:
是否有可能在蜂巢中以某种方式删除分区
在此先感谢您的帮助。
ps:如果你想知道我为什么这样做:数据在持续增长,如果我们不删除 1 分钟的时间片,包含它们的表会变得非常大,导致我们的查询变慢并且需要很多的空间。
sql - SQL 到 HiveQL 生成器
有什么方法可以将我的 SQL 查询转换为 Hive 查询,或者任何开源工具或项目可以帮助我将一些查询从 SQL 转换为 HiveQL,以便我可以通过在 Hadoop 数据库中查询来开始我的开发?
hive - 使用 HiveQL 进行重复数据删除
我有一个带有字段'a'(int),'b'(string),'c'(bigint),'d'(bigint)和'e'(string)的配置单元表。
我有如下数据:
表按键“b”排序。
现在我们想要如下输出:
这将在密钥“a”上进行重复数据删除,但将保留最后一个(最新的)“b”。
是否可以使用 Hive 查询(HiveQL)?