sqoop常用指令

Sqoop常用指令

公共参数 –connect 指定连接的url 例如:jdbc:mysql://hadoop102:3306
–username 指定登录账号
–password 指定登录密码
–driver 指定驱动类[可以通过url推断,可以不写]
import 控制参数
–append 指定是否将数据追加到指定目录
–as-textfile 指定数据保存到hdfs上以text的文件格式保存
–as-parquetfile 指定数据保存到hdfs上以Parquet(列式存储)的格式保存
–compress 【-z】 指定是否使用压缩
–compression-codec 指定压缩格式 【默认gzip】
–delete-target-dir 是否删除目标路径(防止导入一部分失败后造成脏数据)
–fetch-size 指定每个批次从MySQL拉取的数据大小
–num-mappers【-m】 设置使用多少个maptask并行导入数据
–query 【-e】 通过SQL语句指定从MySQL导出导入数据
–columns 指定导入MySQL哪些列的数据
–table 指定导出哪个表的数据
–where 指定导入到MySQL的条件
–split-by 设置按照哪个字段进行分配到MapTask
–target-dir 指定保存在HDFS上的路径
–null-string 当字符串列为null值时要以什么字符写入HDFS(hive中null值保存的是\N )
–null-non-string 当非字符串列为null值时要以什么字符写入HDFS (例如:–null-non-string ‘\N’)
增量数据导入
–check-column 指定通过哪个字段识别增量数据
–incremental {append/lastmodified} append:只导入新增数据,lastmodified导入新增,修改的数据(一般通过时间字段来确定是否修改)
–last-value 指定上次导入的最大值,后续表中>该值就是增量数据
分割符
–fields-terminated-by 指定导入到HDFS中的字段分隔符
–lines-terminated-by 指定数据保存到HDFS上时行之间的分隔符
直接导入hive表中
–hive-import 指定将数据直接导入到hive表
–hive-overwrite 指定是否以覆盖的形式导入
–create-hive-table 指定导入hive表中,若hive表不存在则自动创建,若存在则报错
–hive-table 指定导入的hive的表名
–hive-partition-key 指定数据导入hive表时分区字段名称
–hive-partition-value 指定数据导入hive表时分区字段值
output
控制参数
–columns 指定数据导入到mysql哪些列中
–num-mappers 【-m】 指定mapper的个数
–table 指定数据导入哪个mysql表
–export-dir 指定HDFS中数据的路径
–update-key 指定HDFS数据与MySQL数据通过哪一列判断是同一条数据
–update-mode {updateonly/allowinsert } updateonly:如果数据相同,只更新数据,allowinsert:相同更新数据,不同插入
–input-null-string 指定HDFS中字符串列数据是null,在MySQL中存储的形式
–input-null-non-string 指定HDFS中非字符串列数据是null,在MySQL中存储的形式
分割符
–input-fields-terminated-by 指定HDFS中数据字段之间的分隔符
–input-lines-terminated-by 指定HDFS中行字段之间的分隔符

表格下载
https://download.csdn.net/download/qq_38705144/14425591
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38705144/article/details/112685667