sqoop的全量导入,增量导入2种,减量导入

全量导入:将mysql表中全部数据都导入HDFS,如果HDFS中存在这个目录的话就会报错,默认存储的HDFS目录是  /user/root/XXX,括号中的内容都为解释,要运行的话就一行一行粘贴一起运行

bin/sqoop  import       (在sqoop的安装目录内,import表名是导入)

--connect jdbc:mysql://192.168.5.120:3306/myhive   (连接:协议:数据库类型://ip地址:端口号/数据库)

--username root     (用户名 root)

--password 123456  (密码 123456)

--table person    (表 person)

--m 1 (--num-mappers:使用几个mapper,写1就可以)

增量导入:将数据库中某一字段,增加的导入,在hdfs上单独形成一个文件

bin/sqoop import  (同上)

--connect jdbc:mysql://192.168.5.120:3306/myhive  (同上)

--username root  (同上)

--password 123456  (同上)

--table person  (同上)

--incremental append   (表明增量导入)

--check-column id   (检查哪个字段,这里检查的是mysql数据库表中的id字段)

--last-value 4  (id字段最后一个id是4,那增量导入的话就是从id=5开始往后导入)

--m 1  (同上)

增量导入2或减量导入:设置where条件,通过条件可以判断减少的数据和增加的数据,控制更加灵活一些,例如可以通过时间来判断数据是哪一天生成的等

千万注意:where条件的地方都是用“”双引号引起来的!!!,要不然where条件失效

bin/sqoop import   (同上)

--connect jdbc:mysql://192.168.5.120:3306/myhive  (同上)

--username root   (同上)

--password 123456  (同上)

--table person  (同上)

--incremental append  (表明增量导入)

--where “age>30“  (where条件判断,精华所在,双引号引起来)

--check-column id   (检查列,好像没有什么卵用)

-m 1 (同上)

猜你喜欢

转载自blog.csdn.net/weixin_42333583/article/details/83903057
今日推荐