jjzjj

oozie-workflow

全部标签

hadoop - Oozie Workflow 使用不正确的用户目录

我正在尝试执行同事编写的oozie工作流。我执行这个命令:ooziejob-config./job.properties-run我已经在job.properties中设置了参数,包括我的user.name,当我检查日志时,我可以看到工作流中使用的这些值-在我的hdfs目录中创建文件(例如exportDir=/user/${user.name}/ra_export)。但在工作流程的某个时刻,它因权限错误而失败,因为它试图修改我同事目录中的某些内容。它的行为就好像${user.name}被缓存在某个地方,并且正在使用旧值。有没有人见过这样的行为,如果有,解决方案是什么?更新:这是日志的失败

hadoop - Oozie 4.0.0 构建错误 - 无法解析 hcatalog 依赖项

Hadoop版本-1.2.1Maven版本-3.0.5配置单元版本-0.14.0pig版本-0.14.0当我开始使用以下命令构建oozie时./mkdistro.sh-DskipTests我得到以下错误[INFO]ApacheOozieShareLibSqoop......................SKIPPED[INFO]ApacheOozieShareLibStreaming..................SKIPPED[INFO]ApacheOozieShareLibDistcp.....................SKIPPED[INFO]ApacheOozieW

hadoop - sqoop oozie 将查询结果写入文件

我有一个当前的oozie作业查询Oracle表并写入-覆盖配置单元查询的结果。现在我需要防止覆盖配置单元表并将现有数据保存在该配置单元表上。为此,我想计划这样的步骤:第一步:获取运行“selectcount(*)from...”查询的记录数并将其写入文件。第2步:检查写入文件的计数。第三步:决定是否应用第四步的步骤。第4步:运行主查询并覆盖hive表。我的问题是我找不到任何关于将它们写入文件的文档和/或示例(我知道导入和导出是sqoop的目标)。有谁知道如何将wuery结果写入文件? 最佳答案 理论上:构建一个Pig作业来运行“co

hadoop - 如何从 Oozie 查询 Active NameNode

在我的hadoop集群中,我们有一个namenode和一个secondaryNameNode。我正在我的oozie作业中执行一个步骤,该步骤必须具有“事件”名称节点。有什么东西可以让我从Oozie查询“事件”名称节点吗?请注意,这是一个相当大的集群,不能保证Oozie和HDFS位于同一位置。编辑:请注意,我的问题与Oozie配置无关。配置已经完成。我的问题是查询工作流中的事件名称节点。 最佳答案 如果您有主动-被动/HA配置-oozie应该使用命名空间而不是主动名称节点进行配置。 关于h

shell - 如何使用oozie执行shellScript

我在sqoopJob.sh中编写了以下sqoop作业------------myscript.sh--------------------TARGET_DIR=date+"%Y_%m_%d"sqoopimport--connectjdbc:mysql://localhost/mydb--usernameroot--passwordroot--tableCustomer--m1--target-dir/temp/$TARGET_DIR我想使用oozie执行。它给了我以下错误Cannotrunprogram"CustomerImportScript.sh"(indirectory"/had

hadoop - 设置协调器oozie文件不存在报错如何解决

设置coordinatoroozie时错误文件不存在的解决方法:我在日志协调器中有错误:Pig日志文件转储:后端错误信息错误:java.io.FileNotFoundException:文件不存在:/user/hdfs/jay/part-0.tmp设置协调器:LAST_ONLY${nameNode}/user/hdfs/jay/${YEAR}/${MONTH}/${DAY}/${HOUR}${MINUTE}${nameNode}/user/hdfs/jay/output${coord:current(-2)}${coord:current(-2)}${appFolder}INPUT${

shell - 如何在 OOZIE 中使用正则表达式?

我想检查文件是否存在于给定的HDFS位置。我们可以在fs:exists的帮助下检查文件是否存在于给定的HDFS位置,即如果文件名为test_25082016,在协调工作的帮助下,我们可以获得日期值,即在我们的示例中作为参数today。工作Proppath=/user/cloudera/file/input/test_在workflow.xml中${fs:exists(concat(concat(nameNode,path),today))}${fs:exists(concat(concat(nameNode,path),yesterday))}它按预期工作。但就我而言,我的HDFS位置

hadoop - 是否为 Oozie 操作配置队列可选

我正在浏览大量Oozie示例,我最感兴趣的三个操作是Sqoop、Hive和Pig操作。在某些示例中,mapreduce.job.queuename属性(旧版本为mapred.queue.name)通常配置为default,例如这个:...mapreduce.job.queuenamedefault另一方面,其他示例没有指定任何队列(也没有指定全局配置)。是否需要配置队列?如果我没有指定会发生什么? 最佳答案 Doesconfiguringthequeuenecessary?否没有必要。WhatwouldhappenifIdidn't

java - 如何使用 oozie 协调器延迟工作流操作

我有一个oozie协调员和工作流程工作,当我的工作流程操作之一完成时,我需要在一段时间后开始下一个操作,比如50分钟。我可以从oozie工作流或oozie协调器配置它等待一段时间来执行下一个操作(取决于之前的操作和之前启动的一些异步任务)。协调器xml${exampleDir}/ods-ds-cms-workflow.workflownameNode${nameNode}jobTracker${jobTracker}exampleDir${nameNode}/custom/oozie工作流.xml${jobTracker}${nameNode}mapred.job.queue.name

hadoop - E0701 : XML schema error, cvc-pattern-valid oozie 错误

我正在尝试运行oozie工作流,但出现以下错误:E0701:XML架构错误,cvc-pattern-valid:值“模型和映射表更新”对于模式“([a-zA-Z_]([\-_a-zA-Z0-9])*){1,39}'用于类型'IDENTIFIER'。我在查询中使用以下正则表达式。这有什么问题吗?当我通过Hive或CLI运行时一切正常。regexp_replace(id_col,'^0|[a-zA-Z]+$','')下面是我的workflow.xml${jobTracker}${nameNode}/user/sin/oozie/sources_creation.hql${jobTracke