我有一个在Hadoop集群的边缘节点上运行的pyspark代码。此pyspark代码执行从特征工程到ML训练和预测的各种步骤。代码在github上,我可以将它pull到边缘节点上。可以在yarn/client或yarn/cluster模式下使用spark-submit提交代码。到目前为止一切顺利。现在我想定期安排其中一些任务:我对边缘节点有一些限制,我不能使用crontab可能最好的选择是使用Oozie提交作业。我的问题是每次我做一些修改时如何在Haddop集群上以干净/简单的方式部署代码,以便可以使用Oozie进行调度(我猜Oozie是调度的最佳选择,因为它已经安装)我可以从edge
目前我的oozie工作流程中有6个操作,如下所示。在MainJob1完成后,所有第一个、第二个和第三个作业应该并行运行。MainJob2完成后,只有第二个和第三个作业应该并行运行。有没有可能解决上述工作流执行方式?....${executionModeeq"DEFAULT"}${executionModeeq"INVALID"}.............................................. 最佳答案 您可以将firstparalleljob、secondparalleljob和thirdparallel
我有一个HDFS_file_path或属性需要从workflow-1传递到common_subworkflow。我还有没有该属性或HDFS_file_path的workflow-2。但是workflow-2调用common_subworkflow。在common_subworkflow中,我使用${HDFS_file_path}获取属性值。当workflow-1调用common_subworkflow时工作正常,但当workflow-2调用common_subworkflow时失败,因为HDFS_file_path在workflow-2中不存在。有什么办法可以读取动态属性(如果存在),
根据Oozie的文档,我尝试在Oozie上运行一个map-reduce的例子。众所周知,'workflow.xml'(和'coordinator.xml')应该在HDFS中。然后输入命令:ooziejob-ooziehttp://localhost:11000/oozie-configexamples/apps/map-reduce/job.properties-run。而且我也知道“job.properties”应该在本地文件系统中。但有两件事让我感到困惑:1.为什么workflow.xml中的jar或class变量来自HDFS的lib目录?2.oozie-examples-4.3.
oozie和Hadoop调度程序(FIFO、Fair、Capacity、Delay等)之间有什么区别?哪一个通常用于生产环境? 最佳答案 它们提供不同的功能。Oozie是一个作业调度程序和编排引擎。它将在配置的队列中执行YARN作业。例如,mapreduce.job.queuename在MR/Java操作中,tez.queue.name在HiveAction中(在Tez上),或--queue在星火。您使用的队列取决于您拥有的工作负载,但Fair或Capacity最适合Multi-Tenancy工作负载。如果您有需要在其他作业之前运行
我想为历史日期运行oozie协调器,并将日期作为参数传递给工作流中的脚本。我该怎么做?我可以将开始日期设为旧日期吗?它会catch吗?我应该添加什么频率。 最佳答案 是的,当您提交开始日期为过去的协调器时,它会catch。它会立即开始执行,因此设置concurrency=1可以使您的集群免于繁重的负载。如果你想先处理新文件,你也可以设置execution=LIFO。有关更多信息,请查看http://oozie.apache.org/docs/3.3.2/CoordinatorFunctionalSpec.html我正在发布来自How
我已经在我的系统中安装了apacheoozieversion4.1.2..安装时,我使用以下命令为oozie创建了一个数据库。ooziedb.shcreate-sqlfileoozie.sql-run(linux)为什么oozie需要数据库?它会在数据库中存储什么? 最佳答案 Oozie将工作流/调度程序详细信息和其他信息存储在数据库中。可以从控制台访问正在运行的作业和早期作业的状态。 关于hadoop-为什么oozie需要数据库?,我们在StackOverflow上找到一个类似的问题:
我想创建一个由三个Hadoop作业组成的链,其中一个作业的输出作为输入提供给第二个作业,依此类推。我想在不使用Oozie的情况下执行此操作。我已经编写了以下代码来实现它:-publicclassTfIdf{publicstaticvoidmain(Stringargs[])throwsIOException,InterruptedException,ClassNotFoundException{TfIdftfIdf=newTfIdf();tfIdf.runWordCount();tfIdf.runDocWordCount();tfIdf.TFIDFComputation();}publ
我正在尝试访问通过ooziejava操作配置设置的属性,但我没有得到我正在寻找的值,想知道我是否可以获得任何帮助?我的工作流程...........oozie.launcher.mapred.child.java.opts-Xmx4g-XX:MaxPermSize=256mload.typefull.............我正在尝试通过以下方式从我的代码中访问此属性oozieConfigFile=System.getProperty("oozie.action.conf.xml");finalFileInputStreaminputStream=newFileInputStream(
我使用Hue在Oozie上运行Shell脚本,提交工作流作业时显示以下错误:Cannotrunprogram"FileManipulation.sh"(indirectory"/hadoop/mapred/local/taskTracker/root/jobcache/job_201503271756_0277/attempt_201503271756_0277_m_000000_0/work"):java.io.IOException:error=2,Nosuchfileordirectory可能是什么原因? 最佳答案 请检查包含