关于sqoop导入增量数据到hive实践操作

648 阅读1分钟

近期要解决sqoop导入增量数据到hive ,因为ES的数据,在业务系统更新后,无法获取到更新的数据。 开始测试处理:
1)建表: test01 DDL: CREATE TABLE test01 ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL, updateTime datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, creatTime datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (id) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

参考地址:www.cnblogs.com/Alcesttt/p/… www.cnblogs.com/EnzoDin/p/7… 实践后:语句如下(第一次导入,使用语句 sqoop import --connect jdbc:mysql://yndevdb1.mysql.rds.aliyuncs.com:3306/pro_jtys_db --username dev --password Ybs@devcwd_2018 --table test01 --hive-import --fields-terminated-by ',' -m 1 ): 增量:---表初始化的时候,使用增量语句,不会自动创建hiveb表 sqoop job --create sqoopTes01 -- import --connect jdbc:mysql://yndevdb1.mysql.rds.aliyuncs.com:3306/pro_jtys_db --username dev --password Ybs@devcwd_2018 --table test01 --target-dir '/user/hive/warehouse/test01' --check-column updateTime --incremental lastmodified --last-value '2019-10-22 15:30:56' --m 1 --merge-key id

--- 创建JOB sqoop job --create sqoopTes01 -- import --connect jdbc:mysql://yndevdb1.mysql.rds.aliyuncs.com:3306/pro_jtys_db --username dev --password Ybs@devcwd_2018 --table test01 --target-dir '/user/hive/warehouse/test01' --check-column updateTime --incremental lastmodified --last-value '2019-10-22 15:30:56' --m 1 --merge-key id

--执行 sqoop job --exec sqoopTes01 输入的密码是 mysql 的密码

可以通过修改sqoop-site.xml .来处理--但是我这边是未起效。 参考:blog.csdn.net/hchzhao_198…

blog.csdn.net/xiongbingco…