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