我在伪hadoop模式下运行。具有以下组件-Hadoopv2.7.0-Java1.8+-奥齐4.2.0-操作系统-Fedora22虚拟机-Maven3.3我对Java或Maven一无所知,而且我对使用Maven构建这个世界完全陌生。我正在探索Oozie并想构建它,但每次我尝试构建它时,它都会失败并出现以下错误。我有搜索博客和已知博客(人们提到了gauravkohli博客,但这对我也没有帮助)但没有太多帮助。有人可以帮我吗?其次,虽然我关注了一些博客,其中提到只有hadoop版本需要更改,但即便如此,我认为我需要更改Hbase和其他组件版本,因为它们的版本比文中提到的要高得多oozeDi
我正在运行一个包含hadoop命令的shell脚本。执行相同时出现以下错误Mainclass[org.apache.oozie.action.hadoop.ShellMain],exitcode[1]我正在使用ClouderaHue-Oozie运行一个简单的shell脚本但是当脚本没有hadoop命令时,它会成功执行。我设置了oozie.use.system.libpath=true并且可以看到我的库在user/oozie/share/lib/下面是我尝试运行的shell脚本#!/bin/bash$(hadoopfs-mkdir/)工作流.xml${jobTracker}${nameN
oozie#emailAction#hadoop我正在使用oozie工作流运行hadooppig作业。如何在工作流xml中访问hadoop作业的整个日志,以便我可以在成功/失败电子邮件操作中使用它?谢谢我需要电子邮件中的示例日志:2016-10-2613:58:30,385[main]INFOorg.apache.pig.tools.pigstats.ScriptState-Pigfeaturesusedinthescript:UNKNOWN2016-10-2613:58:30,480[main]INFOorg.apache.pig.backend.hadoop.executionen
在尝试正确使用Oozie时,我最终设置了一些参数,即:oozie.launcher.mapreduce.map.memory.mboozie.launcher.mapreduce.map.java.optsoozie.launcher.yarn.app.mapreduce.am.resource.mboozie.launcher.mapred.job..queue.name如果我在工作流配置中设置它们,它们会按预期工作。有没有一种方法/一个地方可以全局设置它们,即。不是每个工作流程?我原以为custom-oozie-site.xml会是正确的位置,但显然不是(如果放在那里它们没有效果)
有没有办法在Oozie中捕获spark作业的控制台输出?我想在spark作业之后的下一个操作节点中使用特定的打印值。我在想我可以使用${wf:actionData("action-id")["Variable"]}但是oozie似乎没有能力从sparkAction节点捕获输出,这与您可以使用echo"var=12345"的ShellAction不同。然后调用oozie中的wf:actionData以用作整个工作流中的Oozie变量。我想实现这一点,因为我想打印可能处理的记录数并将其存储为oozie变量,并将其用于工作流中的下一个操作节点,而无需执行任何需要您将该数据存储在外部的功能工作
我尝试学习Oozie,我想做一个非常简单的工作流程。为此,我使用HUE创建了第一个oozie工作流。我的第一个工作流程是执行一个shell命令文件“testhbase.sh”,其中包含:#!/bin/shecho-e"scan'hbasedepartementcap'"|hbaseshell-n当我试图将它放入Oozie的shell图标中时,在执行时我得到:没有这样的文件或目录...我怎么知道要在oozie中设置什么参数!!???=================================================================>>>InvokingShe
我需要创建自定义EL函数并在uri模板中使用它(相当于YEAR、MONTH)。有可能的?oozie-site.xml中coordinator这个区域的关键配置是什么? 最佳答案 属性oozie.service.ELService.ext.functions.workflow是您必须包含扩展EL函数到关联类和方法的所有映射的属性。多个映射条目以逗号分隔。oozie.service.ELService.ext.functions.workflowyourELkey=fully_quallified_class_name#static_m
我安排了一个协调员来启动许多单独的工作流程。这是一个回填协调器,开始日期和结束日期都是过去的。这些作业中有一小部分由于输入数据集的临时问题而失败,现在我需要重新运行这些工作流(无需重新运行成功的工作流)。这些不成功的工作流程有多种状态:KILLED、FAILED和SUSPENDED。执行此操作的最佳方法是什么? 最佳答案 我不认为整个事情,即具有多个状态的作业,是否可以在单个命令中运行,但是使用ooziejobs,可以尝试,尽管三个状态的三个单独的命令.如果其他人有更好的方法,请发布。ooziejobsfilter-jobtypew
我将oozie安装作为cloudera安装的一部分。我正在尝试使用coordinator.xml中的以下配置从示例执行协调器工作流。使用此配置,我希望工作流每1小时执行一次,但工作流似乎每5分钟执行一次,有人对此问题有答案吗? 最佳答案 您是否将开始时间设置在当前时间之前?如果是这样,Oozie将以追赶模式工作,直到安排完所有延迟的操作。“频率”设置不适用于追赶模式。 关于hadoop-Oozie协调器问题,我们在StackOverflow上找到一个类似的问题:
我有一个mapreduce作业作为“jar”,应该每天运行。另外,我需要从远程Java应用程序运行这个jar。我如何安排它:即,我只想每天从我的远程Java应用程序运行作业。我读过有关Oozie的资料,但我认为它不适合放在这里。 最佳答案 看看Quartz.它使您能够运行独立的Java程序或在Web或应用程序容器(如JBoss或ApacheTomcat)中运行。特别是与Spring和Springbatch的集成很好。Quartz可以在java代码之外进行配置-在XML中,语法与crontab中的完全一样。所以,我发现它非常方便。ä可