Sqoop中的Sqoop-import-all-tables

1. 介绍sqoop-import-all-tables及其目的

将一组表从RDBMS导入HDFS的工具就是我们称之为“sqoop-import-all-tables”的工具。 在HDFS中,每个表的数据存储在一个单独的目录中。

用该命令导入所有表格时必须满足下列条件:

每个表必须具有单列主键很重要。 另外,必须使用-autoreset-to-one-mapper选项。

必须导入每个表的所有列。

通过WHERE子句,使用默认主键作为拆分列。 不得强加任何条件。

2. Sqoop Import All tables 语法

$ sqoop import-all-tables (generic-args) (import-args)

可以按任意顺序输入导入参数,但Hadoop通用参数只能在任何导入参数之前输入。

通用参数

1542532455680339.png

1542532507609735.png

导入控制参数

1542532584713148.png

1542532619269437.png

和sqoop-import相比,这些参数的行为方式相同。 但是,对于sqoop-import-all-tables,-table,-split-by,-columns和-where参数是无效的。 参数-exclude-tables仅用于 sqoop-import-all-tables。

Import Hive 参数

1542532714343004.png

1542532768274915.png

代码生成参数

1542532844472206.png

import-all-tables不支持-class-name参数。 使用-package-name来放置所有生成的类,可以指定一个包。

3. 示例调用

从corp数据库导入所有表格:

$ sqoop import-all-tables -connect jdbc:mysql://db.foo.com/corp
$ hadoop fs -ls
Found 4 items:
drwxr-xr-x - someuser somegrp 0 2010-04-27 17:15 / user / someuser / EMPLOYEES
drwxr-xr-x - someuser somegrp 0 2010-04-27 17:15 / user / someuser / PAYCHECKS
drwxr-xr-x - someuser somegrp 0 2010-04-27 17:15 / user / someuser / DEPARTMENTS
drwxr-xr-x - someuser somegrp 0 2010-04-27 17:15 / user / someuser / OFFICE_SUPPLIES

xxxxx

Sqoop中的Sqoop-import-all-tables

发表评论

邮箱地址不会被公开。 必填项已用*标注

六 + 一 =

滚动到顶部