模式和lastmodified模式
在實際的工作中,我們大部分的情況下使用的都是增量匯入,不需要每次都需要將表中的所有的資料匯入到hdfs或者hive中,這樣會造成資料的重複.
增量匯入常用的引數:
--check-column:用指定欄位去檢查是否符合增量匯入的條件
--last-value:跟--check配合使用,上次匯入的最後乙個值
假設test庫中有張表user,資料如下:
idname
age1
張三182李四
203王五22
先使用全量匯入將表資料匯入到hdfs中
bin/sqoop import \
--connect jdbc:mysql://localhost:3306/test \
--username root --password 123456 \
--table user --m 1 \
--target-dir /sqoop/test \
之後表中新增一條資料為:
idname
age1
張三182李四
203王五224趙六
33 這時候要將新增的一條資料匯入到hdfs中,就不可已使用全量匯入,會造成資料的重複,這時候就要考慮增量匯入
bin/sqoop import \
--connect jdbc:mysql://localhost:3306/test \
--username root --password 123456 \
--table user --m 1 \
--target-dir /sqoop/test \
--check-column id \
--last-value 3
這時候就會在hdfs的test目錄下新生成乙個檔案part-m-00001,該檔案中的資料為新增的一條資料 sqoop 增量匯入
在隨著系統的執行,每天都會產生新的資料,在進行資料匯入的時候,由於之前已經匯入過資料,所以在產生新的資料的時候,就可以直接在之前導過的資料的基礎上繼續匯入資料,沒有必要之前的所有資料都重新匯入一遍 增量匯入資料的使用 以上為增量匯入的引數check column 檢查列,檢查資料庫表中的索引列,一般...
sqoop增量匯入
執行以下指令先將我們之前的資料匯入 sqoop import connect jdbc mysql master 3306 test username hive password 123456 table customer m 1使用hdfs dfs cat檢視生成的資料檔案,發現資料已經匯入.然後...
sqoop增量資料匯入
1.使用sqoop按欄位增長將mysql中資料抽取到hdfs 2.使用sqoop按時間增長將mysql中資料抽取到hdfs jps start all.sh2.開啟mysql服務。sudo service mysql start登入mysql mysql u root p3.在mysql庫中,建立s...