Sqoop - 工作


本章介绍如何创建和维护 Sqoop 作业。Sqoop 作业创建并保存导入和导出命令。它指定用于识别和调用已保存作业的参数。这种重新调用或重新执行用于增量导入,可以将更新的行从 RDBMS 表导入到 HDFS。

句法

以下是创建 Sqoop 作业的语法。

$ sqoop job (generic-args) (job-args)
   [-- [subtool-name] (subtool-args)]

$ sqoop-job (generic-args) (job-args)
   [-- [subtool-name] (subtool-args)]

创建工作(--create)

这里我们创建一个名为myjob的作业,它可以将 RDBMS 表中的表数据导入到 HDFS 中。以下命令用于创建一个作业,将数据从db数据库中的employee表导入到HDFS文件中。

$ sqoop job --create myjob \
-- import \
--connect jdbc:mysql://localhost/db \
--username root \
--table employee --m 1

验证作业(--list)

'--list'参数用于验证保存的作业。以下命令用于验证保存的 Sqoop 作业列表。

$ sqoop job --list

它显示已保存作业的列表。

Available jobs: 
   myjob

检查工作(--show)

'--show'参数用于检查或验证特定作业及其详细信息。以下命令和示例输出用于验证名为myjob的作业。

$ sqoop job --show myjob

它显示了myjob中使用的工具及其选项。

Job: myjob 
 Tool: import Options:
 ---------------------------- 
 direct.import = true
 codegen.input.delimiters.record = 0
 hdfs.append.dir = false 
 db.table = employee
 ...
 incremental.last.value = 1206
 ...

执行作业 (--exec)

'--exec'选项用于执行保存的作业。以下命令用于执行名为myjob的已保存作业。

$ sqoop job --exec myjob

它向您显示以下输出。

10/08/19 13:08:45 INFO tool.CodeGenTool: Beginning code generation 
...