概述
sqoop的增量导入有两种模式:append模式和lastmodified模式
在实际的工作中,我们大部分的情况下使用的都是增量导入,不需要每次都需要将表中的所有的数据导入到hdfs或者hive中,这样会造成数据的重复.
增量导入常用的参数:
- --check-column:用指定字段去检查是否符合增量导入的条件
- --incremental:指定增量导入的模式,可选append | lastmodified
- --last-value:跟--check配合使用,上次导入的最后一个值
1.append模式
假设test库中有张表user,数据如下:
id | name | age |
1 | 张三 | 18 |
2 | 李四 | 20 |
3 | 王五 | 22 |
先使用全量导入将表数据导入到hdfs中
bin/sqoop import
--connect jdbc:mysql://localhost:3306/test
--username root --password 123456
--table user --m 1
--target-dir /sqoop/test
之后表中新增一条数据为:
id | name | age |
1 | 张三 | 18 |
2 | 李四 | 20 |
3 | 王五 | 22 |
4 | 赵六 | 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
--incremental append
--last-value 3
这时候就会在hdfs的test目录下新生成一个文件part-m-00001,该文件中的数据为新增的一条数据
最后
以上就是大方硬币为你收集整理的sqoop增量导入--append模式的全部内容,希望文章能够帮你解决sqoop增量导入--append模式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复