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

Azure 将PIG输出文件加载到包含一些空白单元格的配置单元表中,azure,hive,apache-pig,sandbox,etl,Azure,Hive,Apache Pig,Sandbox,Etl,我已经成功地将一个250000条记录的CSV文件加载到HDFS中,并对其执行了一些ETL功能,例如删除字符串中除0-9、a-z和a-z以外的任何字符,以使其美观干净 我已将此ETL的输出保存到HDFS,以便加载到配置单元中。在配置单元中,我为表创建了模式,并为每个列设置了适当的数据类型 create external table pigOutputHive ( id string, Score int, ViewCount int, OwnerUserId string, B

我已经成功地将一个250000条记录的CSV文件加载到HDFS中,并对其执行了一些ETL功能,例如删除字符串中除0-9、a-z和a-z以外的任何字符,以使其美观干净

我已将此ETL的输出保存到HDFS,以便加载到配置单元中。在配置单元中,我为表创建了模式,并为每个列设置了适当的数据类型

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;
数据看起来应该是这样的,当我将其下载到本地计算机并在Excel中将其作为CSV查看时,它看起来也不错

当我尝试在同一个表上运行以下查询时,即使对于字符串列,每个字段都将作为整数返回。请参见下面的屏幕截图


谁能看出我错在哪里?在最初的250000行中,在特定字段(如OwnerUserId)中有一些空白,我需要告诉Pig或Hive如何处理这些空白吗

这些都在HDInsight上吗?@juvchan我不这么认为,我正在Azure云上的VM上运行Hortonworks沙盒。我认为HDInsight是不一样的。我也尝试了没有空白的原始文件,我仍然得到相同的结果@WolfPig为什么认为它返回整数?可以在字符串列中有“test string”的测试记录上运行?