Sqoop 스크립트 만들기
import oracle file
import
-Dorg.apache.sqoop.splitter.allow_text_splitter=true
-Dhadoop.security.credential.provider.path=jceks:///tmp/password.jceks
-D mapreduce.map.java.opts=-Djava.security.egd=file:/dev/./urandom
--connect
"jdbc:oracle:thin:@ip:port:sid"
--username
DATUSR
--password-alias
oracle.password
--null-string
'\\N'
--null-non-string
'\\N'
--outdir
sqoop_tmp
Sqoop Script
옵션으로 가져오기
sqoop \
--options-file 수집 할 DB 영역 스크립트 파일(ex. /etl/etljob/sqoop/import-oracle) \
--as-parquetfile \
--compress \
--compression-codec org.apache.hadoop.io.compress.SnappyCodec \
--delete-target-dir \
--target-dir 적재할 경로(ex. hive/stag/test) \
--class-name mapreduce 자바 클래스 명 (ex.och_sqoop_test) \
--num-mappers 1 \
--table 수집 테이블 명 \
--columns "\
COL1, \
COL2, \
COL3, \
COL4, \
COL5"
옵션으로 가져오기
sqoop \
--options-file 수집 할 DB 영역 스크립트 파일(ex. /etl/etljob/sqoop/import-oracle) \
--as-parquetfile \
--compress \
--compression-codec org.apache.hadoop.io.compress.SnappyCodec \
--map-column-java COL_NAME=string, COL_NAME2=DECIMAL(38, 0) \
--delete-target-dir \
--target-dir 적재할 경로(ex. hive/stag/test) \
--class-name mapreduce 자바 클래스 명 (ex.och_sqoop_test) \
--num-mappers 2 \
--split-by "COL NAME" \
--query "SELECT FROM WHERE $CONDITIONS"
sqoop file 실행
$ nohup sh sqoop_script >& logs/sqoop_script.log &