Reply
Highlighted
Explorer
Posts: 11
Registered: ‎10-06-2017
Accepted Solution

Why all data is loaded to first column of Hive table?

I have Quickstart VM and trying to load data, but all data is stored to first column. What is wrong?

 

/*CREATE TABLE   -- Table will be succesfully created*/
CREATE TABLE IF NOT EXISTS Auto_Insurance_Claims_US  
(Customer String,Country String,StateCode String,State String,ClaimAmount Float,Response String,Coverage String,Education String,EffectiveToDate String,EmploymentStatus String,Gender String,Income String,LocationCode String,MaritalStatus String,MonthlyPremiumAuto String,MonthsSinceLastClaim String,MonthsSincePolicyInception String,NumberOfOpenComplaints Int,NumberOfPolicies Int,PolicyType String,Policy String,ClaimReason String,SalesChannel String,TotalClaimAmount Float,VehicleClass String,VehicleSize String)  
ROW FORMAT DELIMITED
STORED AS TEXTFILE

/*LOAD -- All lines of data loaded, but they are all stored to first column Customer*/
LOAD DATA LOCAL INPATH '/home/cloudera/workspace/MyData/Auto_Insurance_Claims_Sample.csv'
OVERWRITE INTO TABLE Auto_Insurance_Claims_US;

Cloudera Employee
Posts: 213
Registered: ‎03-23-2015

Re: Why all data is loaded to first column of Hive table?

It is CSV, so I assume that it is "," delimited?

You will need to tell that to Hive:

CREATE TABLE IF NOT EXISTS Auto_Insurance_Claims_US
(Customer String,Country String,StateCode String,State String,ClaimAmount Float,Response String,Coverage String,Education String,EffectiveToDate String,EmploymentStatus String,Gender String,Income String,LocationCode String,MaritalStatus String,MonthlyPremiumAuto String,MonthsSinceLastClaim String,MonthsSincePolicyInception String,NumberOfOpenComplaints Int,NumberOfPolicies Int,PolicyType String,Policy String,ClaimReason String,SalesChannel String,TotalClaimAmount Float,VehicleClass String,VehicleSize String)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ","
STORED AS TEXTFILE;

Try and see if it works for you.
Explorer
Posts: 10
Registered: ‎02-12-2014

Re: Why all data is loaded to first column of Hive table?

You should specify file delimiter and new line character while creating table.



ROW FORMAT DELIMITED FIELDS TERMINATED BY '\u0001' LINES TERMINATED BY '\n'


Announcements