2016-11-28 79 views
0

這是我的csv文件如何csv文件加載到蜂巢

id,name,address 

"1xz","hari","streetno=1-23-2,street name=Lakehill,town=Washington" 
"2xz","giri","streetno=5-6-3456,street name=second street,town=canada" 

我加載使用行格式分隔符此數據「」但它不是裝properley,我面臨的提交與解決的問題。在地址字段我有這樣的數據格式:「streetno = 1-23-2,street name = Lakehill,town = Washington」在這個地址提交的值被再次終止「,」我找到了豬的一個解決方案,幫助我使用配置單元解決它。

我正在此輸出

"1xz" "hari" "streetno=1-23-2 
"2xz" "giri" "streetno=5-6-3456 

這是我的架構

create table emps (id string,name string,addresss string) row format delimited fields terminated by ',' lines terminated by '\n' stored as textfile; 
+0

這應該有助於http://stackoverflow.com/questions/30637536/how-to-load-csv-data-with-enclosed-by-double-quotes-and-separated-由標籤 - 進入 - 喜 –

回答

0

使用split()函數,它返回字符串數組:[0] = 'streetno',[1] =」 1-23-2' :

split(address,'=')[1] as address --returns '1-23-2' 
0

你已經發現豬工作的解決方案,爲什麼無法轉移相對於蜂巢ŧ能夠直接使用HCatalog。

STORE pig_relation INTO 'hive_table_name' USING org.apache.hive.hcatalog.pig.HCatStorer(); 

確保您使用啓動豬:

>pig -useHCatalog 

表必須在蜂房已經存在。

希望這會有所幫助。