问题标签 [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.

0 投票
12 回答
148104 浏览

hadoop - Hive 在 HDFS 中将文件存储在哪里?

我想知道如何找到 Hive 表和它们所代表的实际 HDFS 文件(或者更确切地说是目录)之间的映射。我需要直接访问表文件。

Hive 将其文件存储在 HDFS 的什么位置?

0 投票
3 回答
8228 浏览

hadoop - 将列添加到现有 HIVE 表的后果是什么?

假设在开始使用 HIVE 后有几百个演出,我想添加一列。从我看到的各种文章和页面中,我无法理解后果

  • 需要存储空间(双倍?)
  • 阻塞(我仍然可以在其他进程中读取表格)吗?
  • 时间(它是快还是和 Mysql 变化一样慢?)
  • 底层存储(我需要更改所有底层文件吗?如何使用 RCFile 来完成?)

任何人都可以在 HIVE 列中的结构上回答相同的问题。

0 投票
4 回答
11804 浏览

unit-testing - Apache Hive 中的自动化测试

我即将开始一个使用 Apache Hadoop/Hive 的项目,该项目将涉及一组 hive 查询脚本来为各种下游应用程序生成数据馈送。这些脚本似乎是某些单元测试的理想候选者——它们代表了我的数据存储和客户端应用程序之间的 API 合同的履行,因此,为给定的起始数据集编写预期结果应该是微不足道的。我的问题是如何运行这些测试。

如果我使用 SQL 查询,我可以使用 SQLlite 或 Derby 之类的工具来快速启动测试数据库、加载测试数据并针对它们运行一组查询测试。不幸的是,我不知道有任何用于 Hive 的此类工具。目前,我最好的想法是让测试框架启动一个 hadoop 本地实例并针对它运行 Hive,但我以前从未这样做过,我不确定它是否会起作用,或者是否是正确的路径。

另外,我对关于我正在做的是单元测试还是集成测试的迂腐讨论不感兴趣——我只需要能够证明我的代码有效。

0 投票
1 回答
625 浏览

mapreduce - 如何在 Apache Hive 中为(小)数据集并行化查询

我正在我的部分数据集上测试最新的 Hive。我通过自定义 SerDe 读取的只有几 GB 的日志文件。

当我运行简单的 Group By 查询(4 个 MR 作业)时,我得到了诸如

  • 地图:100%
  • 减少:0%
  • 地图:85%
  • 减少:0%
  • 地图:86%
  • 减少:0%

一直只在 8 核服务器上使用一个核心。有点浪费...

我已经激活了并行选项,但它仍然不会并行化。我已将减少作业的数量设置为 8。

我的期望是,由于我的数据集是分区的(=> 不同的文件),至少一些 map-reduce 阶段可以在这些文件上并行运行。

我的理解错了吗?有没有特定的方法来编写查询?

谢谢

0 投票
2 回答
848 浏览

amazon-ec2 - 向伪分布式 Hadoop 节点添加新卷静默失败

dfs.name.dir我试图通过在in 中添加卷的位置来向 Hadoop 伪分布式节点添加一个新卷hdfs-site.xml,并且我可以在该位置看到锁定文件 - 但尽我所能,似乎当我加载文件时(使用 hive)这些位置几乎没有使用(即使出现了锁定文件和一些子文件夹......所以 Hadoop 显然可以访问它们)。当主卷接近用完空间时,我得到以下异常:

关于如何向 Hadoop 添加新卷的任何指示?FWIW 我正在使用 EC2。

0 投票
2 回答
2132 浏览

hadoop - 如何使配置单元从某个路径加载元存储而不是在当前目录中创建?

我正在使用 Hive 进行一些数据处理。但是,每当我启动 Hive-Shell 时,它都会在当前目录中创建一个元存储,并且我无法访问我在另一个目录中创建的表。这对我来说有点烦人,我已经进入特定目录,然后启动 Hive-Shell 来查看我的表。

我尝试在 hive-default.xml 中配置路径,但没有成功。

谢谢

0 投票
3 回答
5452 浏览

perl - Perl Thrift 客户端到 Hive?

我想使用 Perl 连接到基于 Hadoop 的 Hive 数据存储。Hive 允许使用 Thrift 接口 ( http://wiki.apache.org/hadoop/Hive/HiveClient ) 进行连接,并且 Perl 有一个 Thrift 实现 (例如http://metacpan.org/pod/Thrift::XS ) . 但是,我发现的唯一 Thrift 客户端是 Cassandra 客户端。

如果存在这样的客户,或者如何创建它,有什么想法吗?也许甚至可以在没有明确定义的情况下进行连接?

(PS - Hive 也有一个 ODBC/JDBC 接口,但是安装这些模块是一件令人头疼的事情,并且将是最后的手段)

谢谢!

0 投票
3 回答
32240 浏览

hive - 蜂巢中的分区列

我必须hive用一个列对表进行分区,该列也是表的一部分。

例如:

表:员工

列: employeeId、employeeName、employeeSalary

我必须使用 employeeSalary 对表进行分区。所以我写了以下查询:

我只是在这里使用了名称“ds”,因为它不允许我使用相同的名称employeeSalary

我在做什么是对的吗?此外,在将值插入表中时,我必须使用逗号分隔的文件。现在该文件由如下行组成:2019,John,2000

作为一排。如果我必须使用薪水进行分区,我的第一个分区将是薪水 2000 的所有人。所以查询将是

在 100 个工资为 2000 的条目之后,我有下一个 500 个工资为 4000 的条目。所以我将再次触发查询:

如果我是对的,请告诉我...

0 投票
7 回答
46501 浏览

java - 如何将 .txt 文件转换为 Hadoop 的序列文件格式

为了有效利用 Hadoop 中的 map-reduce 作业我需要以hadoop 的序列文件格式存储数据。但是,目前数据只有平面 .txt 格式。谁能建议我可以将 .txt 文件转换为序列文件的方法?

0 投票
2 回答
62180 浏览

hadoop - 在 Hive 中创建临时表?

Hive 是否支持临时表?我在 apache 文档中找不到它。