【发布时间】:2018-05-22 18:46:29
【问题描述】:
我正在尝试导入包含引用字段的文件。我发现了 csv-serde JAR 并尝试使用它来获得最小的成功。
我从以下位置下载了 JAR: https://github.com/ogrodnek/csv-serde
我在 /tmp 目录中添加了我的 HDFS 系统。
当我尝试在 Ambari 中使用 View to HIVE 时,我设置了以下内容:
ADD JAR /tmp/csv-serde-1.1.2-0.11.0-all.jar;
这会抛出文件不存在的错误:
H110 无法提交声明。处理语句时出错: /tmp/csv-serde-1.1.2-0.11.0-all.jar 不存在 [ERROR_STATUS]
然后我尝试从终端调用 hive:
hive> 添加 JAR /tmp/csv-serde-1.1.2-0.11.0-all.jar;
这成功了。然后我创建我的外部表,然后选择一些字段以确保它在 CLI 配置单元环境中是好的并且一切正常。
然后我从 Ambari 中返回 Hive 视图,当我在表上运行任何类型的操作时,我得到:
H110 无法提交声明。编译语句时出错: 失败:运行时异常 MetaException(消息:java.lang.ClassNotFoundException 类 com.bizo.hive.serde.csv.CSVSerde 未找到)[ERROR_STATUS]
当我尝试通过 ODBC 驱动器从 MS SQL 查询此内容时,我也遇到了同样的错误。
我在这个论坛上查看了多篇关于添加某某 .jar 以及这个和那个到的帖子:
/usr/lib/hive
该目录不会在我的集群上以基本操作系统级别或 HDFS 文件系统存在。我应该将 .jar 文件放在哪里以及如何放置,以便我可以在 hive CLI 之外查询我的表?
【问题讨论】:
标签: hive