6

我是 hadoop hive 的新手。我们正在使用开源 hadoop hive。它安装在 ubuntu 单节点集群上。我在一个 csv 文件中有 100 万行数据,我将它从 windows 移到了 linux。当使用傻瓜命令将数据上传到配置单元时,空值被上传到表中。

LOAD DATA INPATH '/home/goldstone/Desktop/RejectStats.csv' 
OVERWRITE INTO TABLE rejstats;

我什至尝试通过放置文件 hdfs 来上传值,但仍然是同样的问题。

我的表结构如下:

CREATE TABLE rejstats( amount_requested INT , appdate TIMESTAMP , loan_title STRING , dbt_income_ratio FLOAT , city STRING , state STRING , employment_lenght STRING)
ROW FORMAT
DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE;

我附上了返回的空值的屏幕截图。

请任何人都可以帮助我解决这个问题。谢谢你。

问候,迪维亚。

4

1 回答 1

9

我认为您正在尝试在使用FIELDS TERMINATED BY '\t'ie 选项卡的表中输入逗号分隔的文件。尝试以下操作:

CREATE TABLE rejstats (amount_requested INT , appdate TIMESTAMP , 
loan_title STRING , dbt_income_ratio FLOAT , city STRING , 
state STRING , employment_lenght STRING) ROW FORMAT DELIMITED FIELDS 
TERMINATED BY ',' STORED AS TEXTFILE;

LOAD DATA INPATH '/home/goldstone/Desktop/RejectStats.csv' 
OVERWRITE INTO TABLE rejstats;
于 2013-07-09T12:12:57.023 回答