把csv導入到hive表中步驟


本博文解決的問題:
現在我們有一個CSV格式的一個文件download.csv,里面是我們需要的數據,想把數據裝入到數據impala數據庫中

1.首先整理文本文件
打開download.csv,選擇文件,另存為,保存類型:制表符分隔.txt

2.創建表

drop table if exists  test.cde_map_info_load;
CREATE TABLE test.cde_map_info_load (   sys_sign STRING COMMENT '系統標識',   sys_cn_name STRING COMMENT '系統名稱',   srctab_cd STRING COMMENT '源表英文名',   srctab_name STRING COMMENT '源表中文名',   clmn_nm STRING COMMENT '字段英文名',   clmn_cn_nm STRING COMMENT '字段中文名',   srccde_cd STRING COMMENT '源代碼值',   srccde_desc STRING COMMENT '源代碼描述',   transfer_type STRING COMMENT '轉換類型',   code_source STRING COMMENT '碼值來源表',   code_source_rule STRING COMMENT '碼值來源規則',   targtab_cd STRING COMMENT '目標代碼編號',   targtab_name STRING COMMENT '目標代碼編號描述',   targcde_cd STRING COMMENT '目標代碼值',   targcde_desc STRING COMMENT '目標代碼描述',   valid_sts STRING COMMENT '有效狀態',   create_time STRING COMMENT '創建時間',   update_time STRING COMMENT '更新時間' ,code_load_type STRING )  
row format delimited
fields terminated by '\t'
STORED AS TEXTFILE;

 


3.將文件上傳到本地路徑下
/BIG_DATA/tmp/zw/newdir/a.txt


4.切換編碼格式(文件中含有中文)
piconv -f gb2312 -t UTF-8 a.txt  >  b.txt


load data local inpath '/BIG_DATA/tmp/zw/newdir/b.txt' into table test.cde_map_info_load;


select * from test.cde_map_info_load limit 100;


如果存在分區,在插入分區表中
insert overwrite test.cde_map_info   select * from test.cde_map_info_load


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM