hive學習 —Hive幾種匯出資料方式
如果資料檔案恰好是使用者需要的格式,那麼只需要拷貝檔案或資料夾就可以。
hadoop fs –cp source_path target_path
2.匯出到本地檔案系統
--不能使用insert into local directory來匯出資料,會報錯
--只能使用insert overwrite local directory來匯出資料
--hive0.11版本之前,只能使用預設分隔符^A(ascii碼是\00001)
insert overwrite local directory '/home/sopdm/wrk'
select id,name,tel,age from sopdm.wyp;
--hive0.11版本之後,可以指定分隔符
insert overwrite local directory '/home/sopdm/wrk'
row format delimited
fields terminated by ','
select id,name,tel,age from sopdm.wyp;
--匯出資料到多個輸出資料夾
from employees se
insert overwrite local directory ‘/tmp/or_employees’
select * se where se.cty=’US’ and se.st=’OR’
insert overwrite local directory ‘/tmp/ca_employees’
select * se where se.cty=’US’ and se.st=’CA’
3.匯出到HDFS
--比匯出檔案到本地檔案系統少了一個local
insert overwritedirectory '/home/sopdm/wrk'
select id,name,tel,age from sopdm.wyp;
--hive0.11版本之後,可以指定分隔符
insert overwritedirectory '/home/sopdm/wrk'
row format delimited
fields terminated by ','
select id,name,tel,age from sopdm.wyp;
4.匯出到hive的另一張表
insert into table sopdm.wyp2
partition(age='25')
select id,name,tel,age from sopdm.wyp;
5.使用hive的-e和-f引數命令匯出資料
--使用hive的-e引數
hive –e “select * from wyp” >> /local/wyp.txt
--使用hive的-f引數, wyp.hql中為hql語句
hive –f wyp.hql >> /local/wyp2.txt
6.匯出到關係型資料庫
sqoop export --connect jdbc:mysql://host001/test --username root --password szy --table person --export-dir person sqoop export --connect jdbc:mysql://host001/test --username root --password szy --table animal --export-dir animal