Django入門之開(kāi)發(fā)環(huán)境搭建1.1
676
2025-04-01
1??????SqoopShell使用簡(jiǎn)介
sqoop-shell是一個(gè)Loader的shell工具,其所有功能都是通過(guò)執(zhí)行腳本“sqoop2-shell”來(lái)實(shí)現(xiàn)的。
sqoop-shell工具提供了如下功能:
支持創(chuàng)建和更新連接器
支持創(chuàng)建和更新作業(yè)
支持刪除連接器和作業(yè)
支持以同步或異步的方式啟動(dòng)作業(yè)
支持停止作業(yè)
支持查詢作業(yè)狀態(tài)
支持查詢作業(yè)歷史執(zhí)行記錄
支持復(fù)制連接器和作業(yè)
支持創(chuàng)建和更新轉(zhuǎn)換步驟
支持指定行、列分隔符
sqoop-shell工具支持如下模式:
交互模式
通過(guò)執(zhí)行不帶參數(shù)的“sqoop2-shell”腳本,進(jìn)入Loader特定的交互窗口,用戶輸入腳本后,工具會(huì)返回相應(yīng)信息到交互窗口。
批量模式
通過(guò)執(zhí)行“sqoop2-shell”腳本,帶一個(gè)文件名作為參數(shù),該文件中按行存儲(chǔ)了多條命令,sqoop-shell工具將會(huì)按順序執(zhí)行文件中所有命令;或者在“sqoop2-shell”腳本后面通過(guò)“-c”參數(shù)附加一條命令,一次只執(zhí)行一條命令。
2??????SqoopShell配置
2.1??????配置Loader客戶端
1.??使用“PuTTY”工具,使用安裝客戶端的用戶登錄客戶端所在節(jié)點(diǎn)。
2.??執(zhí)行以下命令,防止超時(shí)退出。
TMOUT=0
3.??執(zhí)行以下命令,進(jìn)入Loader客戶端安裝目錄。例如,Loader客戶端安裝目錄為“/opt/hadoopclient/Loader”。
cd /opt/hadoopclient/Loader
4.??執(zhí)行以下命令,配置環(huán)境變量。
source /opt/hadoopclient/bigdata_env
5.??執(zhí)行以下命令解壓“l(fā)oader-tools-1.99.3.tar”。
tar -xvf loader-tools-1.99.3.tar
解壓后的新文件保存在“l(fā)oader-tools-1.99.3”目錄。
6.??執(zhí)行以下命令修改工具授權(quán)配置文件“l(fā)ogin-info.xml”,并保存退出。
vi loader-tools-1.99.3/loader-tool/job-config/login-info.xml
2.2??????配置sqoopshell?配置文件
使用“PuTTY”工具,使用安裝客戶端的用戶登錄Loader客戶端所在節(jié)點(diǎn)。
執(zhí)行以下命令,進(jìn)入sqoop-shell工具的“conf”目錄。例如,Loader客戶端安裝目錄為“/opt/hadoopclient/Loader”。
cd /opt/hadoopclient/Loader/loader-tools-1.99.3/sqoop-shell/conf
執(zhí)行以下命令,配置認(rèn)證信息。
vi client.properties
3??????Sqoopshell使用示例
3.1??????交互模式
1.??執(zhí)行以下命令,進(jìn)入交互模式(客戶端以/opt/hadoopclient為例)。
source /opt/hadoopclient/bigdata_env
cd /opt/hadoopclient/Loader/loader-tools-1.99.3/sqoop-shell
./sqoop2-shell
2.???????獲取幫助信息(\h獲取幫助信息,\cr獲取create的幫助信息,\up獲取更新的幫助信息,以此類推)
3.???????查看連接器
以此類推,可以查看framework、job、Connection等信息
4.???????創(chuàng)建連接器
根據(jù)show connector信息選擇對(duì)應(yīng)的連接器,根據(jù)create幫助信息創(chuàng)建Connection,然后根據(jù)命令行提示,輸入對(duì)應(yīng)信息,假如提示的參數(shù)無(wú)需設(shè)置,可按enter直接跳過(guò)
5.???????創(chuàng)建作業(yè)
根據(jù)show connection出來(lái)的信息選擇對(duì)應(yīng)鏈接,根據(jù)create幫助信息創(chuàng)建Job,然后根據(jù)命令行提示,輸入對(duì)應(yīng)信息,假如提示的參數(shù)無(wú)需設(shè)置,可按enter直接跳過(guò)
也可以使用—help查看創(chuàng)建job的選項(xiàng)信息
Json獲取方法
1)??????登錄loader原生頁(yè)面,創(chuàng)建一個(gè)相同類型的作業(yè)(如TaiPingTab)。
2)??????導(dǎo)出作業(yè)的配置json文件,復(fù)制json文件中,hops的內(nèi)容(包括大括號(hào)),保存為新的json文件
3)??????根據(jù)業(yè)務(wù)需要調(diào)整json文件。
3.2??????批量模式
批量模式有兩種方式,一種是./sqoop2-shell+腳本的方式,腳本中配置待執(zhí)行的命令
另一種是./sqoop2-shell -c “待執(zhí)行的命令”方式
獲取幫助:
./sqoop2-shell -c "create connection -cn generic-jdbc-connector --help"獲取創(chuàng)建connection的幫助信息
./sqoop2-shell -c "create job -xn mysql -t import --help"查看創(chuàng)建Job幫助信息
1.?????腳本方式
cd /opt/hadoopclient/Loader/loader-tools-1.99.3/sqoop-shell
vi batchCommand.sh
更新作業(yè)
2.?????–c?方式(使用-c參數(shù)附帶一條命令,sqoop-shell可以一次只執(zhí)行附帶的這一條命令)
創(chuàng)建鏈接為mysql名稱為TaiPingTab的導(dǎo)入任務(wù)
./sqoop2-shell -c "create job -xn mysql -t import -name TaiPingTab --connector-table-schemaName keshangbank --connector-table-tableName Tab --connector-table-needPartition false --connector-table-columns id,name,value --framework-output-storageType HIVE --framework-output-outputDirectory /user/loader/Tab --framework-throttling-partitionHandlers 10 --framework-throttling-extractors 10?? --trans /opt/client/Loader/loader-tools-1.99.3/loader-tool/job-config/TaiPing.json? --queue root.default"
啟動(dòng):./sqoop2-shell -c "start job -n TaiPingTab -s"
刪除:./sqoop2-shell -c "delete job -n TaiPingTab"
更新:./sqoop2-shell -c 'update job -j 37? -name update-test? --connector-table-sql "select *? from keshangbank.update_test where time < "2020-2-2" and ${CONDITIONS}" '
注:?1.? sqoop-shell目錄中createConnection? createJob? helpCmd? startCmd中詳細(xì)描述了各個(gè)參數(shù)的含義
3.?此文檔中并未對(duì)參數(shù)詳細(xì)介紹,參數(shù)部分可參考產(chǎn)品文檔sqoop-shell章節(jié)
4.?更新的參數(shù)和創(chuàng)建的參數(shù)保持一致
附件: SqoopShell使用案例.docx 743.88KB 下載次數(shù):2次
附件: Json.rar 1.13KB 下載次數(shù):37次
EI企業(yè)智能 FusionInsight
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。