1、拷贝oracle表结构导入到hive中
sqoop create-hive-table \
--connect jdbc:oracle:thin:@//127.0.0.1:1521/orcl \
--username sys \
--password 123456 \
--table EQU_RECEIVE_EQP \
--hive-database ykk \
--hive-table EQU_RECEIVE_EQP
hive-database hive中实例名
hive-table hive表名
2、全量导入
sqoop import \
--connect jdbc:oracle:thin:@127.0.0.1/ykkdb \
--username sys \
--password 123456 \
--table EQU_RECEIVE_EQP1 \
--fields-terminated-by ' ' \
--delete-target-dir \
--num-mappers 1 \
--hive-import \
--hive-database default \
--hive-table EQU_RECEIVE_EQP
3、增量导入
sqoop import \
--connect jdbc:oracle:thin:@127.0.0.1:1521/ykkdb \
--username sys \
--password 123456 \
--table EQU_RECEIVE_EQP1 \
--num-mappers 1 \
--hive-import \
--hive-database ykk \
--hive-table EQU_RECEIVE_EQP \
--check-column CREATE_TIME \
--incremental append \
--last-value '2019/06/06 00:00:00' \
--merge-key ID
重要Tip:
- 生产环境中,为了防止主库被Sqoop抽崩,我们一般从备库中抽取数据。
- 一般RDBMS的导出速度控制在60~80MB/s,每个 map 任务的处理速度5~10MB/s 估算,即 -m 参数一般设置4~8,表示启动 4~8 个map 任务并发抽取。