--validate 啟用資料副本驗證功能,僅支援單錶拷貝,可以指定驗證使用的實現類
--validation-threshold 指定驗證門限所使用的類
--direct 使用直接匯出模式(優化速度)
--export-dir 匯出過程中hdfs源路徑
--table 匯出的目的表名稱
--call 匯出資料呼叫的指定儲存過程名
--update-key 更新參考的列名稱,多個列名使用逗號分隔
--update-mode 指定更新策略,包括:updateonly(預設)、allowinsert
--input-null-string 使用指定字串,替換字串型別值為null的列
--input-null-non-string 使用指定字串,替換非字串型別值為null的列
--staging-table 在資料匯出到資料庫之前,資料臨時存放的表名稱
--clear-staging-table清除工作區中臨時存放的資料
--batch使用批量模式匯出
全量匯出:
//例1
//先清空mysql這張表
#!/bin/bash
sqoop eval --connect "jdbc:mysql://172.***.***.170:3309/p_b?useunicode=true&characterencoding=utf-8&servertimezone=utc&usessl=true" \
--username *** \
--password *** \
--e "delete from t_kp_***"
//再將資料推送到mysql
sqoop export \
--connect "jdbc:mysql://172.***.***.170:3309/p_b?useunicode=true&characterencoding=utf-8&servertimezone=utc&usessl=true" \
--username *** \
--password *** \
--table t_kp_*** \
--update-key cno \
--update-mode allowinsert \
--input-fields-terminated-by "\001" \
--hcatalog-database os \
--hcatalog-table os_***_kp_***_al \
--columns="id,company,city" \
--input-null-string '\\n'
--input-null-non-string '\\n'
//例2
sqoop export \
--connect "jdbc:mysql://****/ln?useunicode=true&characterencoding=utf-8" \
--username *** \
--password *** \
--table t_test_mysql \
--update-mode allowinsert \
--input-fields-terminated-by "\001" \
--hcatalog-database os \
--hcatalog-table os_table \
--columns="id,company,city" \
--input-null-string '\\n' \
--input-null-non-string '\\n' \
--null-string '\\n' \
--null-non-string '\\n'
按天匯出到mysql:
#!/bin/bash
#刪除資料
effective_time=`date -d "-1days" +%y-%m-%d` #這裡先定義乙個變數(比如是昨天)
sqoop eval --connect "jdbc:mysql://172.**.***.170:3309/p_b?useunicode=true&characterencoding=utf-8&servertimezone=utc&usessl=true" \
--username p_b \
--password i6h*******jpl \
--e "delete from t_sdssfs where left(statistic_time,10) ='$effective_time'"
#匯出資料 insert到mysql表
sqoop export \
--connect "jdbc:mysql://172.**.***.170:3309/p_b?useunicode=true&characterencoding=utf-8&servertimezone=utc&usessl=true" \
--username p_b \
--password i6h*******jpl \
--table t_sdssfs \
--input-fields-terminated-by "\001" \
--hcatalog-database dw \
--hcatalog-table t_sdssfs \
--columns="brand,functions,count_ppv,count_uuv,statistic_time,create_time" \
--input-null-string '\\n' \
--input-null-non-string '\\n'
思路是刪除具體哪天的資料,然後將「正確的」資料,匯出到新錶即可
sqlserver:
把資料從hdfs導回到sqlserver
把資料從hdfs導回到sqlserver,從hive匯出也和這個一樣,因為都是文字檔案,hbase的話,也是不支援直接的,需要通過和hive結合,才能匯出。
sqoop export --connect 'jdbc:sqlserver://192.***.***.105:1433;username=***;password=***;database=sams' \
--table st_statistics2 --export-dir /user/cenyuhai/sams
參考:
sqoop export \
--connect jdbc:microsoft:sqlserver: \
--table abc_paye_typ \
--username myuser \
--p \
--m 1 \
--export-dir /test/financial/abc/pmt_typ/000001_0
--driver com.microsoft.sqlserver.jdbc.sqlserverdriver
參考:
參考: MySQL Explain的使用及各引數介紹
select type,查詢的型別 table,輸出 查詢 表的名稱 type,訪問方式 possible keys,可能使用的key 顯示可能使用的索引,沒有則為null,有的話可能是多個,但是不一定全部使用 key,實際使用的索引 key len,表示索引中所使用的位元組數,可通過該列計算查詢中...
Linux下top使用及各引數簡介
top top命令能夠顯示出各項與系統和程序相關的資訊,在運維 除錯以及問題定位方面經常使用。語法 top hv abchimmss d delay n iterations p pid pid 可以省略 這裡僅介紹常用選項,更詳細的資訊可以參考manpage頁面。其中,在除錯某多執行緒的程式時,可...
CALL BDC 時各引數
以前作過這樣的程式,記錄一筆.data messtab like bdcmsgcoll occurs 0 with header line.call transaction va21 using bdcdata mode mode a display screen mode e display sc...