Sqoop作為數(shù)據(jù)傳輸?shù)墓ぞ?,?duì)于Hadoop與傳統(tǒng)數(shù)據(jù)庫之間數(shù)據(jù)的傳輸起著橋梁作用,那么到底如何導(dǎo)入導(dǎo)出數(shù)據(jù)呢?
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站與策劃設(shè)計(jì),漯河網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:漯河等地區(qū)。漯河做網(wǎng)站價(jià)格咨詢:18982081108
第一:使用MapReduce作業(yè)來執(zhí)行導(dǎo)入:
(1)Sqoop首先檢查將要導(dǎo)入的表
1、確定主鍵(如果有的話),調(diào)用mapreduce,根據(jù)主鍵分割map
2、沒有主鍵,運(yùn)行邊界查詢確定導(dǎo)入的記錄數(shù)(找到一個(gè)min和一個(gè)max,確定邊界進(jìn)行劃分)
3、通過任務(wù)數(shù)來劃分邊界查詢的結(jié)果,使得他們有相同的負(fù)載
(2)Sqoop為每個(gè)將導(dǎo)入的表生成Java源文件
1、在導(dǎo)入過程中編譯和使用文件
2、導(dǎo)入后依然保留,可以被安全刪除
第二:使用sqoop導(dǎo)入整個(gè)數(shù)據(jù)庫:
(1)import-all-tables工具導(dǎo)入整個(gè)數(shù)據(jù)庫
1、存儲(chǔ)為逗號(hào)間隔的文件
2、默認(rèn)導(dǎo)入到HDFS的home目錄
3、數(shù)據(jù)將放在每個(gè)表的子目錄中
(2)使用--warehouse-dir選項(xiàng)指定不同的基礎(chǔ)目錄
第三:使用Sqoop導(dǎo)入單個(gè)表:
(1)import工具導(dǎo)入單個(gè)表
1、示例:導(dǎo)入accounts表
以逗號(hào)分隔的方式存儲(chǔ)數(shù)據(jù)到HDFS
2、指定tab分隔字段
第四:增量導(dǎo)入
(1) 如果上次記錄導(dǎo)入后發(fā)生了變更怎么辦?
1、可以重新導(dǎo)入所有記錄,但是效率低
(2) Sqoop的lastmodified增量模式導(dǎo)入新的和修改的記錄
1、基于指定的timestamp列
2、確保當(dāng)記錄更新或者被添加時(shí)timestamp也更新
(3)append增量模式只導(dǎo)入新紀(jì)錄
1、基于指定列的最后一條記錄
第五:使用Sqoop從Hadoop導(dǎo)出數(shù)據(jù)到RDBMS
(1)Sqoop的import工具把數(shù)據(jù)從RDBMS拉入到HDFS
(2)有時(shí)候也需要把HDFS的數(shù)據(jù)推回到RDBMS,當(dāng)需要對(duì)大數(shù)據(jù)集進(jìn)行批處理,并導(dǎo)出結(jié)果到RDBMS供其它系統(tǒng)訪問
(3)Sqoop使用export工具,RDBMS表在導(dǎo)出前必須已存在
掌握了以上方式,對(duì)于關(guān)系型數(shù)據(jù)庫的導(dǎo)入和導(dǎo)出基本有一個(gè)明確的認(rèn)知和了解,其實(shí)我們?cè)谌粘5膶W(xué)習(xí)和實(shí)踐過程中要多去看看別人的分享,畢竟做技術(shù)每個(gè)人的經(jīng)歷與經(jīng)驗(yàn)不一樣,有時(shí)候說不準(zhǔn)會(huì)有意向不到的收獲。我自己平時(shí)喜歡關(guān)注“大數(shù)據(jù)cn”、“大數(shù)據(jù)時(shí)代學(xué)習(xí)中心”這些微信服務(wù)號(hào),對(duì)于我個(gè)人而言,起到了很大的促進(jìn)作用,也期待每一個(gè)學(xué)習(xí)大數(shù)據(jù)的人都能夠有所收獲!
本文題目:關(guān)系型數(shù)據(jù)庫導(dǎo)入導(dǎo)出絕招出爐
鏈接URL:http://jinyejixie.com/article14/jjgode.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、動(dòng)態(tài)網(wǎng)站、外貿(mào)建站、搜索引擎優(yōu)化、品牌網(wǎng)站制作、域名注冊(cè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)