将pig输出文件加载到包含一些空白单元格的配置单元表中

rm5edbpk  于 2021-06-21  发布在  Pig
关注(0)|答案(0)|浏览(235)

我已经成功地将一个250000条记录的csv文件加载到hdfs中,并对它执行了一些etl功能,比如删除字符串中除0-9、a-z和a-z以外的任何字符,这样它就很好而且干净了。
我已经将这个etl的输出保存到hdfs中,以便加载到hive中。在配置单元中,我为表创建了模式,并为每列设置了适当的数据类型。

create external table pigOutputHive (
  id string,
  Score int,
  ViewCount int,
  OwnerUserId string,
  Body string,
  Rank int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
location '/user/admin/PigOutputETL';

当我对数据运行简单查询时,例如:

SELECT * FROM pigoutputhive LIMIT 100000;

数据看起来应该是这样的,当我把它下载到我的本地机器上并以csv的形式在excel中查看时,它看起来也不错。
当我尝试在同一个表上运行以下查询时,即使对于字符串列,每个字段都以整数形式返回。请参见下面的屏幕截图。

有人能看出我错在哪里吗?在最初的250000行中,在特定字段中有一些空格,比如owneruserid,我需要告诉pig或hive如何处理这些吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题