Giraph Version:1.1.0
Hadoop Version: 0.20.203
Input Graph:
store it it tiny_graph.txt and upload it on HDFS
[0,5,[[1,1],[3,3]]]
[2,66,[[1,2],[4,4]]]
[1,25,[[0,1],[2,2],[3,1]]]
[3,85,[[0,3],[1,1],[4,4]]]
[4,125,[[3,4],[2,4]]]
Input Graph Pattern: [VertexId,VertexValue,[EdgeDestinationVertexId,EdgeValue]....]
code:
package Success;
import java.io.IOException;
import org.apache.giraph.graph.BasicComputation;
import org.apache.giraph.graph.Vertex;
import org.apache.hadoop.io.DoubleWritable;
import org.apache.hadoop.io.FloatWritable;
import org.apache.hadoop.io.LongWritable;
public class MaxVal extends BasicComputation<LongWritable,DoubleWritable,FloatWritable,DoubleWritable>
{
@Override
public void compute(
Vertex<LongWritable, DoubleWritable, FloatWritable> v,
Iterable<DoubleWritable> msg) throws IOException {
// TODO Auto-generated method stub
boolean changed=false;
for(DoubleWritable messages :msg)
{
if(v.getValue().get() < messages.get())
{
v.setValue(messages);
changed=true;
}
}
if(getSuperstep()==0 | changed)
{
sendMessageToAllEdges(v,v.getValue());
}
v.voteToHalt();
}
}
How to Compile:
copy this java file to:
$cp your_program.java /usr/local/giraph/giraph-examples/src/main/java/org/apache/giraph/examples/your_program.java
$cd /usr/local/giraph/giraph-examples/
$mvn compile
How to run:
hadoop jar /usr/local/giraph/giraph-examples/target/giraph-examples-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner MaxVal -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vof org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexOutputFormat -vip /input/tiny_graph.txt -op /output/MaxVal -w 1
What are arguments?
-vif : Graph input format
-vof : Graph output format
-vip : Graph input file path on HDFS
-op : Graph outout path on HDFS
Hadoop Version: 0.20.203
Input Graph:
store it it tiny_graph.txt and upload it on HDFS
[0,5,[[1,1],[3,3]]]
[2,66,[[1,2],[4,4]]]
[1,25,[[0,1],[2,2],[3,1]]]
[3,85,[[0,3],[1,1],[4,4]]]
[4,125,[[3,4],[2,4]]]
Input Graph Pattern: [VertexId,VertexValue,[EdgeDestinationVertexId,EdgeValue]....]
code:
package Success;
import java.io.IOException;
import org.apache.giraph.graph.BasicComputation;
import org.apache.giraph.graph.Vertex;
import org.apache.hadoop.io.DoubleWritable;
import org.apache.hadoop.io.FloatWritable;
import org.apache.hadoop.io.LongWritable;
public class MaxVal extends BasicComputation<LongWritable,DoubleWritable,FloatWritable,DoubleWritable>
{
@Override
public void compute(
Vertex<LongWritable, DoubleWritable, FloatWritable> v,
Iterable<DoubleWritable> msg) throws IOException {
// TODO Auto-generated method stub
boolean changed=false;
for(DoubleWritable messages :msg)
{
if(v.getValue().get() < messages.get())
{
v.setValue(messages);
changed=true;
}
}
if(getSuperstep()==0 | changed)
{
sendMessageToAllEdges(v,v.getValue());
}
v.voteToHalt();
}
}
How to Compile:
copy this java file to:
$cp your_program.java /usr/local/giraph/giraph-examples/src/main/java/org/apache/giraph/examples/your_program.java
$cd /usr/local/giraph/giraph-examples/
$mvn compile
How to run:
hadoop jar /usr/local/giraph/giraph-examples/target/giraph-examples-1.1.0-SNAPSHOT-for-hadoop-1.2.1-jar-with-dependencies.jar org.apache.giraph.GiraphRunner MaxVal -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vof org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexOutputFormat -vip /input/tiny_graph.txt -op /output/MaxVal -w 1
What are arguments?
-vif : Graph input format
-vof : Graph output format
-vip : Graph input file path on HDFS
-op : Graph outout path on HDFS
No comments:
Post a Comment