使用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
,否则需要指定字段;