设为首页 收藏本站
查看: 747|回复: 0

[经验分享] 使用oozie调度sqoop从oracle导入hbase

[复制链接]

尚未签到

发表于 2016-8-8 06:27:17 | 显示全部楼层 |阅读模式
最近在使用sqoop把oracle中的数据导入到hbase中, 表中的数据每个小时导入一次,使用oozie定时促发。
    hadoop版本:hadoop-2.0.0-cdh4.3.0
    oozie版本:oozie-3.3.2-cdh4.3.0
    sqoop版本:sqoop-1.4.3-cdh4.3.0
   相应的配置如下:
   coordinator.xml
   
<coordinator-app name="cfg_check_formula-coord" frequency="${coord:hours(1)}" start="${start}" end="${end}" timezone="UTC"
xmlns="uri:oozie:coordinator:0.2">
<controls>
<concurrency>1</concurrency>
</controls>
<action>
<workflow>
<app-path>${nameNode}/user/${coord:user()}/${tescommRoot}/apps/sqoop/cfg_check_formula</app-path>
</workflow>
</action>
</coordinator-app>


    workflow.xml

<workflow-app xmlns="uri:oozie:workflow:0.2" name="sqoop-cfg_check_formula-wf">
<start to="sqoop-node"/>
<action name="sqoop-node">
<sqoop xmlns="uri:oozie:sqoop-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<!--          <prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/sqoop"/>
<mkdir path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data"/>
</prepare>
-->
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<arg>import</arg>
<arg>--connect</arg>
<arg>jdbc:oracle:thin:@127.0.0.1:1523:TEST</arg>
<arg>--username</arg>
<arg>ora</arg>
<arg>--password</arg>
<arg>111</arg>
<arg>--m</arg>
<arg>1</arg>
<arg>--query</arg>
<arg>SELECT ROWID, a.* FROM cfg_check_formula a WHERE $CONDITIONS</arg>
<arg>--map-column-java</arg>
<arg>ROWID=String</arg>
<arg>--hbase-table</arg>
<arg>cfg_check_formula</arg>
<arg>--hbase-row-key</arg>
<arg>ROWID</arg>
<arg>--column-family</arg>
<arg>f_cfg_check_formula</arg>
</sqoop>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Sqoop import cfg_check_formula failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>


job.properties

nameNode=hdfs://master:8020
jobTracker=master:8032
queueName=default
testRoot=test
oozie.use.system.libpath=true
oozie.coord.application.path=${nameNode}/user/${user.name}/${testRoot}/apps/sqoop/cfg_check_formula
#start=2013-08-29T10:00Z
#end=2013-08-29T12:00Z
start=2013-09-04T11:00+0800
end=2013-09-04T12:00+0800


上述配置完后,在workflow目录下创建lib目录,把sqoop lib下的jar拷贝至这个目录下。这样我们就可以通过oozie定时启动这个导入任务。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-254379-1-1.html 上篇帖子: ORA-12537相关?【转载】查看、修改ORACLE最大进程数 下篇帖子: 关于oracle中无法查询中文条件的解决方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表