sqoop增量导入--append模式

sqoop的增量导入有两种模式:append模式和lastmodified模式

在实际的工作中,我们大部分的情况下使用的都是增量导入,不需要每次都需要将表中的所有的数据导入到hdfs或者hive中,这样会造成数据的重复.

增量导入常用的参数:

  1. --check-column:用指定字段去检查是否符合增量导入的条件
  2. --incremental:指定增量导入的模式,可选append  |  lastmodified
  3. --last-value:跟--check配合使用,上次导入的最后一个值

1.append模式

假设test库中有张表user,数据如下:

idnameage
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 \

之后表中新增一条数据为:

 

idnameage
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,该文件中的数据为新增的一条数据

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值