使用 cloudera hadoop UI 自动化 sqoop 增量

Posted

技术标签:

【中文标题】使用 cloudera hadoop UI 自动化 sqoop 增量【英文标题】:automate sqoop incremental using cloudera hadoop UI 【发布时间】:2017-11-18 09:48:44 【问题描述】:

有没有办法使用时间戳以外的列值自动执行 sqoop 导入。我试图在我的表中使用一列(ID)。但它没有用。下面是示例代码,我正在使用 cloudera hadoop UI 进行自动化。问题是最后一个值不会自动更新。

         import
         --connect
         jdbc:mysql://172.26.122.123:3306/books
         --username
         hadoop
         --password
         ********
         --incremental
         append
         --check-column
         id
         --last-value
         0
         --table
         authors
         --as-textfile
         --fields-terminated-by
         ","
         --null-string
         \0
         --null-non-string
         \0
         --target-dir
         /user/thilina_08838/source/test
         -m
         1

下面是mysql表的结构 +-----------+-------------+------+-----+---------+ --------+ |领域 |类型 |空 |钥匙 |默认 |额外 | +-----------+-------------+------+-----+---------+ --------+ |编号 |整数(11) |是 | |空 | | |姓名 | varchar(20) |是 | |空 | | |电子邮件 | varchar(20) |是 | |空 | | |时间戳 |日期时间 |是 | |空 | | +-----------+-------------+------+-----+---------+ --------+

【问题讨论】:

【参考方案1】:

您可以使用已保存的 sqoop 导入作业轻松地自动执行此操作。

sqoop job --create jobname --import --connect
     jdbc:mysql://172.26.122.123:3306/books
     --username
     hadoop
     --password
     ********
     --incremental
     append
     --check-column
     id
     --last-value
     0
     --table
     authors
     --as-textfile
     --fields-terminated-by
     ","
     --null-string
     \0
     --null-non-string
     \0
     --target-dir
     /user/thilina_08838/source/test
     -m
     1

您可以根据您的增量刷新频率放置一个 cron 作业或 ETL 工作流,并在其中调用 sqoop --exec jobname

请参阅以下内容以获取更多信息。

Sqoop saved job documentation

【讨论】:

我们如何在 Cloudera hadoop oozie UI 中做到这一点? 你用的是哪个cloudera版本?

以上是关于使用 cloudera hadoop UI 自动化 sqoop 增量的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop系列之:使用Cloudera部署,管理Hadoop集群

使用Cloudera部署,管理Hadoop集群

ConnectionRefused 尝试使用 cloudera 连接到 hadoop

CM+CDH安装教程(CentOS)

基于Hadoop生态圈的数据仓库实践 —— 环境搭建

离线部署 Cloudera Manager 5 和 CDH 5.12.1 及使用 CDH 部署 Hadoop 集群服务