1.11-1.12 Sqoop匯入資料時兩種增量方式匯入及direct
阿新 • • 發佈:2021-07-10
一、增量資料的匯入
1、兩種方式
## query 有一個唯一識別符號,通常這個表都有一個欄位,類似於插入時間createtime where createtime => 20150924000000000 and createtime < 20150925000000000 ##sqoop引數 Incremental import arguments: --check-column <column> Source column to check for incremental change --incremental <import-type> Define an incremental import of type 'append' or 'lastmodified' --last-value <value> Last imported value in the incremental check column
2、用sqoop引數增量匯入的方式
## bin/sqoop import \ --connect jdbc:mysql://hadoop-senior.ibeifeng.com:3306/test \ --username root \ --password 123456 \ --table my_user \ --target-dir /user/root/sqoop/imp_my_incr \ --num-mappers 1 \ --incremental append \ --check-column id \ --last-value 4 #--incremental append //追加方式 #--check-column //檢查的欄位 #--last-value //最後的值,不包含這個值,從這個值後面的開始匯入 ## [root@hadoop-senior hadoop-2.5.0-cdh5.3.6]# bin/hdfs dfs -text /user/root/sqoop/imp_my_incr/part-m-00000 5,test,test 6,pudong,pudong 7,qiqi,qiqi
二、direct引數
直接匯出模式(優化速度);
使用的是關係資料庫自帶的匯入匯出工具;
## bin/sqoop import \ --connect jdbc:mysql://hadoop-senior.ibeifeng.com:3306/test \ --username root \ --password 123456 \ --table my_user \ --target-dir /user/root/sqoop/imp_my_incr \ --num-mappers 1 \ --delete-target-dir \ --direct