sqoop export及各引數釋義

2021-09-29 19:16:09 字數 3581 閱讀 7155

--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...