2015-05-29 59 views
0

我從過去10天開始一直在研究giraph。我瞭解如何在Giraph中安裝和執行給定示例。但是我想設計我自己的自定義代碼,所以我需要你的一些幫助。如果有人做了這個,請讓我知道並給出一些想法。如何編寫和運行apache Giraph自定義代碼?

回答

2

您需要的是在該包中創建一個新項目,一個包foo和一個foo1類。這個項目必須引用giraph-core jar文件。類foo1必須擴展AbstractComputation類。您應該重寫AbstractComputation的計算函數。在計算函數中,您將開發基於頂點導向範例的自己的圖算法。

有關如何實現自己的算法的更多信息,可以使用giraph的giraph示例包中提供的示例,例如SimpleConnectedComponents.java和SingleSourceShortestPaths.java。

在實現foo1之後,您應該從項目中創建一個jar文件,並使用-libjars參數將此jar文件傳遞到您的命令中。

+0

非常感謝巡迴快速響應。如何在我的命令中使用-libjars我正在使用hadoop jar /usr/local/giraph/giraph-examples/target/giraph-examples-1.2.0-SNAPSHOT-for-hadoop -2.7.0-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.examples.SimpleShortestPathsComputation -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip /tiny_graph.txt -vof org .apache.giraph.io.formats.IdWithValueTextOutputFormat -op /最短路徑-w 1 -ca giraph.SplitMasterWorker = false爲了運行它,你可以爲我提供一些示例代碼。 – ldmi

+0

hadoop jar /usr/local/giraph/giraph-examples/target/giraph-examples-1.2.0-SNAPSHOT-for-hado op-2.7.0-jar -with-dependencies.jar org.apache.giraph.GiraphRunner -libjars [path-to-your-jar-file] /foo.jar foo.foo1 -vif org.apache.giraph.io.formats.JsonLongDoubleFloatDoubleVertexInputFormat -vip /tiny_graph.txt -vof org.apache.giraph.io.formats .IdWithValueTextOutputFormat -op/shortestpaths -w 1 -ca giraph.SplitMasterWorker = false –

+0

嗨,謝謝......但是當我嘗試這樣做時,它顯示錯誤信息爲不是有效的JAR:/ usr/local/giraph/giraph-examples/target/giraph-examples-1.2.0-SNAPSHOT-for-hado op-2.7.0-jar -with-dependencies.jar – ldmi