从HDFS(包括Hive和HBase)中将数据导出到关系型数据库中。
1、命令案列
[victor@node1 sqoop-1.4.7]$ bin/sqoop export \
--connect jdbc:mysql://node1:3306/company \
--username root \
--password 000000 \
--table staff \
--export-dir /user/company \
--input-fields-terminated-by "\t" \
--num-mappers 1
2、参数
序号 | 参数 | 说明 |
---|---|---|
1 | --direct | 利用数据库自带的导入导出工具,以便于提高效率 |
2 | --export-dir <dir> | 存放数据的HDFS的源目录 |
3 | -m或--num-mappers <n> | 启动N个map来并行导入数据,默认4个 |
4 | --table <table-name> | 指定导出到哪个RDBMS中的表 |
5 | --update-key <col-name> | 对某一列的字段进行更新操作 |
6 | --update-mode <mode> | updateonly allowinsert(默认) |
7 | --input-null-string <null-string> | 请参考import该类似参数说明 |
8 | --input-null-non-string <null-string> | 请参考import该类似参数说明 |
9 | --staging-table <staging-table-name> | 创建一张临时表,用于存放所有事务的结果,然后将所有事务结果,一次性导入到目标表中,防止错误。 |
10 | --clear-staging-table | 如果第9个参数非空,则可以在导出操作执行前,清空临时事务结果表 |