尝试将 CSV 加载到 Hive 时出现 NullPointerException

问题描述

我按如下方式转储 Hive 表

hive -e 'select * from soMetable' | sed 's/[\t]/,/g' > /tmp/us.csv

删除一个目标表,然后根据模型表重新创建它。

drop table blargh; create table blargh like modeltable;

modeltable 在名为 mkt_cd 的字段上进行分区,所以现在 blargh 也是如此。

我针对 /tmp/us.csv 运行脚本并修改时间戳字段,将其调整为 Now(),格式为 YYYY-mm-DD HH:MM:SS,然后我写出一个文件 new.csv。旧的 CSV /tmp/us.csv 有一个这种格式的时间戳,它很旧,我们需要刷新它。

最后我尝试加载新的 CSV 文件

hive> load data inpath '/path/to/new/new.csv' into table blargh partition(mkt_cd); Failed: NullPointerException null

即使我将 new.csv 的“头部”(几行)作为我的输入,也会发生此错误。在编辑器中,看起来不错,没有空行。此外,如果我在更改之前简单地使用原始 CSV /tmp/us.csv 文件,也会出现此错误。这可能是什么原因?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)