hive 的資料匯入和匯出
1.load data [local]
-->本地,將資料檔案copy到hdfs對應的目錄,適合大部分場景使用
load data local inpath ' /opt/datas/emp.tx' into table emp;
load data local inpath '資料檔案所在的目錄(local_path)' into table tablename;
--->HDFS ,將資料檔案move到hdfs對應的目錄上,適合大資料集的儲存
load data inpath ‘hdfs_path’into table tablename ;\
load data inpath ‘ /user/hive/warehouse/db_emp.db/student_b.txt’into table student_b ;
2.load data +overwrite 【覆蓋資料】
load data [local] inpath 'path' overwrite into table tablename;
-->適合重複寫入資料的表,一般指的是零時表,作為過渡使用
3.as select
create table tb(先建表) as select * from tb1;
-->適合資料查詢結果的儲存
4.insert方式
insert into select sql;---》追加
insert overwrite table select sql --》覆蓋
測試:
create table tb like dept;(dept是庫中已有的表,並且有資料)
載入資料 insert into table tb select * from dept;
5.location 方式
【匯出】
1.insert overwrite [local] directory 'path' select sql ;
--->本地 insert overwrite local directory '/opt/datas/emp_01' select * from emp;
--->hdfs insert overwrite directory '/emp_02' select * from emp; (/ 是hdfs根目錄)
2.bin/hdfs dfs -get xxx 下載資料檔案(hive 客戶端)
3.bin/hive -e 或者 -f >> 或者 > (>> 追加 > 覆蓋)
4.sqoop 方式:import匯入和export 匯出