使用sqoop從Hive導數到Oracle
導數命令:
sqoop export \
--table U_CL_CTL.MID_ORDER_VIP_LEVEL_CHANGE_MA \
--connect jdbc:oracle:thin:@xxx:1521:biedwmiu \
--username xxx \
--password xxx \
--columns id,vip_no,order_no,vip_level_code,shop_no,out_date,brand_detail_no,vip_level_code_new,period_time,sal_amt,region_no,region_name,managing_city_no,managing_city_name,update_time,etl_time \
--input-lines-terminated-by '\n' \
--input-null-string '\\N' \
--input-null-non-string '\\N' \
--hcatalog-database odp_dm_dev \
--hcatalog-table MID_ORDER_VIP_LEVEL_CHANGE_MA \
--num-mappers 1
參數說明
--table 導入到oracle所在的庫名及表名
--connect oracle JDBC連接
--username oracle庫用戶名
--password oracle庫密碼
--columns 導入字段 columns不能有多餘的空格,否則會報錯
--input-lines-terminated-by 列分隔符(根據hive的表結構定義指定分隔符)
--input-null-string 如果hive表中存在null字段,則需要添加參數,否則無法導入
--input-null-non-string
--hcatalog-database hive庫名
--hcatalog-table hive表名
--num-mappers 1
Note:
1.Hive parquet格式可直接導入到 Oracle;
2.如果hive表不是分區表可以省略 --columns
,否則需要指定字段;