Project

General

Profile

1
<workflow-app xmlns="uri:oozie:workflow:0.3" name="java-cloner">
2
	<start to="data_producer" />
3
	<action name="data_producer">
4
		<java>
5
			<job-tracker>${jobTracker}</job-tracker>
6
			<name-node>${nameNode}</name-node>
7
			<!-- The data generated by this node is deleted in this section -->
8
			<prepare>
9
				<delete path="${nameNode}${workingDir}/data_producer" />
10
				<mkdir path="${nameNode}${workingDir}/data_producer" />
11
			</prepare>
12
			<configuration>
13
				<property>
14
					<name>mapred.job.queue.name</name>
15
					<value>${queueName}</value>
16
				</property>
17
			</configuration>
18
			<!-- This is simple wrapper for the Java code -->
19
			<main-class>eu.dnetlib.iis.core.java.ProcessWrapper</main-class>
20
			<!-- The business Java code that gets to be executed -->
21
			<arg>eu.dnetlib.iis.core.examples.protobuf.java.SampleDataProducer</arg>
22
			<!-- All input and output ports have to be bound to paths in HDFS -->
23
			<arg>-Operson=${workingDir}/data_producer/person</arg>
24
			<arg>-Odocument=${workingDir}/data_producer/document</arg>
25
		</java>
26
		<ok to="cloner" />
27
		<error to="fail" />
28
	</action>
29
	<action name="cloner">
30
		<java>
31
			<job-tracker>${jobTracker}</job-tracker>
32
			<name-node>${nameNode}</name-node>
33
			<!-- The data generated by this node is deleted in this section -->
34
			<prepare>
35
				<delete path="${nameNode}${workingDir}/cloner" />
36
				<mkdir path="${nameNode}${workingDir}/cloner" />
37
			</prepare>
38
			<configuration>
39
				<property>
40
					<name>mapred.job.queue.name</name>
41
					<value>${queueName}</value>
42
				</property>
43
			</configuration>
44
			<!-- This is simple wrapper for the Java code -->
45
			<main-class>eu.dnetlib.iis.core.java.ProcessWrapper</main-class>
46
			<!-- The business Java code that gets to be executed -->
47
			<arg>eu.dnetlib.iis.core.examples.protobuf.java.PersonCloner</arg>
48
			<!-- All input and output ports have to be bound to paths in HDFS -->
49
			<arg>-Iperson=${workingDir}/data_producer/person</arg>
50
			<arg>-Operson=${workingDir}/cloner/person</arg>
51
			<arg>-Pcopies=3</arg>
52
		</java>
53
		<ok to="end" />
54
		<error to="fail" />
55
	</action>
56
	<kill name="fail">
57
		<message>Unfortunately, the process failed -- error message:
58
			[${wf:errorMessage(wf:lastErrorNode())}]</message>
59
	</kill>
60
	<end name="end" />
61
</workflow-app>
    (1-1/1)