问题标签 [apache-hive]
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.
jdbc - Hive JDBC MapRedTask 失败
我编写了一个 Java 代码来访问 Apache Hive 表。
对于上述程序,我收到以下错误:
对于不需要 mapreduce 的普通查询,工作正常,但是当我使用执行 mapreduce 任务的这种类型的查询时,我得到了上述错误。
请帮助解决这个问题。
hadoop - 如何使用蜂巢查询语言从用户那里获取特定的日期和时间范围?
我在 hive 的数据库中有一个表。该表根据年月日进行分区。
我的查询看起来像这样
现在我想在 mm-dd-yyy HH : MM :SS 和 mm-dd-yyy HH : MM :SS 之间得到结果,我该怎么做?
是否可以在用户选择日期/时间范围的地方弹出?
不知道这是否有帮助,但数据大约有 5 亿行。谢谢
hive - Hive 中的 PIG UDF
对此没有代码表示歉意,因为这是一个通用问题-
可以从 Hive 中消耗 PIG UDF 吗?具体来说,PIG Apache DataFu ( http://datafu.incubator.apache.org/ ) UDF 可以在 HIVE 中使用吗?
我看到一个关于在 PIG 中使用 HIVE UDF 的 Jira - https://issues.apache.org/jira/browse/PIG-3294
问题是我们可以这样做吗?
谢谢, 马尼什
hadoop - 填充字段的字段的 Hive 查询计数
我有一个巨大的 Hive 表,由十个产品字段、购买日期字段和一个标识符组成。产品字段命名为prod1
, prod2
, ... ,prod10
表示最近购买的十种产品。对于大多数 ID,我们没有一直到十种产品的购买历史记录。
我想为每个prod<X>
字段构建人口比率分布,以显示整个数据集的购买历史细分。
目前,我正在运行一个 bash 脚本,该脚本对表运行十个连续查询,例如:
hive -e "select count(1) from db.tbl where prod<X> != '';"
...并将输出保存到文件中。这似乎笨拙且效率低下。有没有更好的方法来指定具有一系列字段条件的一系列字段的 Hive 计数?我尝试过使用 groupby 甚至映射一系列字段来提出一种策略,但我无法完全理解!= ''
为每个字段指定条件。
提前感谢任何方向。
hadoop - 在 Apache Hive 限制中需要替代查询
我需要以下查询的替代查询。
Select a.name,max(a.cnt) from (Select name,count(name) as cnt from Candidate group by name) a group by a.name order by 2 desc limit 1;
如果存在候选者,则删除表;
创建存储为文本文件 LOCATION '/user/cloudera/test/Exercise/candidate' 的外部表候选(名称字符串)
将路径中的数据加载到“/user/cloudera/test/candidate”覆盖到候选表中;
样本数据:
拉贾
拉贾
拉贾
拉贾
拉贾
阿尼尔
阿尼尔
阿尼尔
阿尼尔
阿尼尔
阿尼尔
阿尼尔
吉里
吉里
吉里
马河
马河
我需要名称重复更多时间的结果。按照上面的例子
阿尼尔又重复了一遍。
为了达到这个结果,我写了下面的查询。但是我对这个查询性能不满意,有没有人可以替代这个查询?
Select a.name,max(a.cnt) from (Select name,count(name) as cnt from Candidate group by name) a group by a.name order by 2 desc limit 1;
谢谢文卡德桑
hive - Hive 自定义 SerDe 可以生成多行吗?
我正在使用 Hive 0.13.1,并创建了一个自定义 SerDe,它能够处理一种特殊的 xml 数据。到目前为止,一切都很好。我还为拆分输入数据的 InputFormat 创建了一个类。
我是否有可能在我的自定义 SerDe(或我的 SerDe 中的其他地方)的 deserialize() 函数中生成多行(输出)?
这样我就可以从一个拆分中创建例如两行?据我所知,在反序列化函数中(在其他 SerDe 类中),返回值只是一个列表(一行的值),并且将显示为一行。
可以说我有一个这样的xml:
我的 SerDe 获取了整个项目块,我现在要做的是为每个在 Hive中创建一个<subitem>
id 的行。<item>
我无法调整 InputFormat 类,因为问题并不像本例中那样微不足道:)
apache-hive - Apache Hive 和记录更新
我有流数据进入我的消费者应用程序,我最终希望在 Hive/Impala 中显示。一种方法是使用基于 Hive 的 API 将更新批量插入 Hive 表。
另一种方法是将数据作为 avro/parquet 文件直接写入 HDFS,然后让 hive 检测新数据并将其吸入。
我在我的开发环境中尝试了这两种方法,我注意到的“唯一”缺点是我需要在我的代码中考虑到 hive 和/或故障条件的高延迟写入。
是否有要遵循的架构设计模式/最佳实践?
hadoop - 如何从 hive 服务器获取 mapreduce 作业编号
如果使用配置单元 cli。日志是:
但在蜂巢服务器或直线。日志是:
我怎样才能得到工作编号?我需要计算工作进度并打印出来..
hive - 在 Hive 中创建表语法错误
我正在尝试使用以下查询在配置单元中创建一个表:
但我收到以下错误:
我以前用相同的语法创建了事务表,结果很好。但不知何故,我认为我犯了一些语法错误。请帮忙。