WorkFlow中Sqoop Action使用案例错误总结

job.properties 中可能出现的错误

jobTracker=hadoop-senior.beifeng.com:8032 端口错误

jobTracker的端口设置错误 8032 。表示是yarn的运行地址及端口号

oozieAppsRoot 地址错误

表示 在HDFS上oozie运行sqoop流程job的目录。目录前后把反斜杠都去掉。正确写法是oozieAppsRoot=user/beifeng/oozie-apps

oozieDataRoot 地址错误

表示 在HDFS上oozie的sqoop流程job运行结果的目录。目录前后把反斜杠都去掉。正确写法是oozieDataRoot=user/beifeng/oozie/datas

oozie.wf.application.path中的地址变量错误,使用上面定义的变量

正确:oozie.wf.application.path=${nameNode}/${oozieAppsRoot}/sqoop-import/workflow.xml
说明:${oozieAppsRoot} 表示oozie在hdfs上运行的目录,前面已经定义为key,后面再使用时要以变量的方式来使用。${oozieAppsRoot}

outputDir

错误:应该是提前在oozieDataRoot 的基础上追加的目录。看已经在hdfs系统上创建好的地址黏贴过来。前后没有反斜杠。



正确写法:outputDir=sqoop-import-user/output

workflow.xml 容易出现的错误

<delete path= 出现错误

错误地址黏贴,都是变量引用,并且是数据输出地址。
正确:<delete path="${nameNode}/${oozieDataRoot}/${outputDir}"/>

<command> 出错地方

sqoop运行的命令 必须是以sqoop的命令开头
正确样例:<command>import --connect jdbc:mysql://hadoop-senior.beifeng.com:3306/test --username root --password 123456 --table my_user_0321 --num-mappers 1 --target-dir /user/beifeng/oozie/datas/sqoop-import-user/output</command>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1/列出mysql数据库中的所有数据库sqoop list-databases -connect jdbc:mys...
    时待吾阅读 2,763评论 1 5
  • Apache Sqoop 概述 使用Hadoop来分析和处理数据需要将数据加载到集群中并且将它和企业生产数据库中的...
    和心数据阅读 1,352评论 0 8
  • [TOC] 最近在研究数据采集相关的知识,需要用到Sqoop把关系型数据库的数据导入到Hive里,这里记录下自己的...
    纳尼2号阅读 19,135评论 11 23
  • 上节课学习了Hadoop集群测试,这节课我们一起学习一下Sqoop,Sqoop是专门用来迁移数据的,它可以把数据库...
    文子轩阅读 7,044评论 1 9
  • 一年的考研生活 终于画上句号 和别人的圆满句号不同 我因差一名而没有被录取 ...
    大鹏Renr阅读 344评论 1 0