Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
Hadoop클러스터 환경에서 오라클및 sqoop이 이미 설치되어 있는 상태에서 oracle 테이블을 import하는 방법은 아래와 같다.
1. query를 지정하는 경우
#!/bin/bash
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/lib/oracle/19.9/client64/lib/ojdbc8.jar
sqoop import \
--connect jdbc:oracle:thin:@gooperdb:5012:orcl \
--username gooper \
--password gooper_password \
--driver oracle.jdbc.driver.OracleDriver \
--query ' SELECT A, B FROM gooper.table_name where $CONDITIONS' \
--target-dir /DATA/gooper/tb_gooper \
-m 1 \
--delete-target-dir \
2. 테이블을 직접 지정하여 import하는 경우(테이블명은 대문자로 지정할것.)
sqoop export \
--connect jdbc:oracle:thin:@아이피:포트:디비스페이스 \
--username 아이디 \
--password 패스워드 \
--table TB_SAVE_TABLE \
--export-dir /user/hive/warehouse/sample.db/t_test_data \
--input-fields-terminated-by "\t" \
--input-lines-terminated-by "\n" \
--verbose \
-m 1 \
--input-null-string '\\N' \
--input-null-non-string '\\N'