sqoop常用命令(彙總)

oracle導入到hdfs(parquet格式)

工 中經常使用sqoop導入數據到hdfs上,由於oracle表中有些字段包括/t/r/n等特殊字符,爲了數據不出現錯位,解析失敗等情況,我們採用parquet壓縮格式(其中時間存爲 "yyyy-mm-dd hh24:mi:ss.ff"格式)

sqoop import \
--connect jdbc:oracle:thin:@//IP:1521/ASMP2 \
--username <username> \
--password <password> \
--query "SELECT * FROM XXX WHERE \$CONDITIONS" \
--map-column-java COMPLETE_TIME=String \
--map-column-hive COMPLETE_TIME=String \
--split-by ID \
--target-dir /user/hive/warehouse/ \
--as-parquetfile

oracle導入到hdfs(text格式)

sqoop import \
--connect jdbc:oracle:thin:@IP:1521:ORCL \
--username <username> \
--password <password> \
--table EMP  \
--columns "EMPNO,ENAME,JOB,SAL,COMM" \
--target-dir /user/hive/warehouse/ \
--fields-terminated-by '\t' \
--lines-terminated-by '\n' \
--null-string '\\N' \
--null-non-string '0' \
-m 1

oracle導入到hdfs(rowid字段)

sqoop import  \
--connect jdbc:oracle:thin:@//IP:1521/ASMP2 \
--username <username> \
--password <password> \
--query "SELECT rowidtochar(rowid) as row_id,t.*  FROM XXX  t where \$CONDITIONS" \
--fields-terminated-by '\t' \
--delete-target-dir \
--target-dir /user/asmp/hive/asmp \
--split-by ID \
-m 10

oracle導入到hive

hdfs導出到oracle

sqoop export 
--connect jdbc:oracle:thin:@//IP:1521/SVWOT  
--username <username> 
--password <password> 
--table DACU.TT_TEST 
--input-fields-terminated-by '\t' 
--export-dir /user/asmp/hive/test
--input-null-string '\\N' 
--input-null-non-string '\\N' 
--columns=RSSC_CODE,PROVINCE_CODE,CITY_CODE,SST_CODE,DATE_YM,SERIES_CODE,MODEL_CODE,CAR_NUMBER_YEAR,CAR_NUMBER_MONTH,CREATE_DATE

hdfs導出到mysql

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章