如何在 giraph 中将 SplitMasterWorker 值设置为 false

How to set SplitMasterWorker value as false in giraph

我尝试从 eclipse IDE 执行 giraph 自定义代码,当我尝试 运行 代码时,它在线程“main”java.lang.IllegalArgumentException 中显示异常:checkLocalJobRunnerConfiguration:当使用 LocalJobRunner,必须只有一名工人,因为一次只有一项任务! 所以我想设置giraph.SplitMasterWorker=false.How来设置它,在哪里设置?

将 -ca giraph.SplitMasterWorker=false 作为参数传递给您的应用程序。

如果您运行在单节点集群上使用 giraph,那么粘贴“-ca giraph.SplitMasterWorker=false”会有帮助。但是,如果您尝试 运行 基于 hadoop 版本 2.x.x 的 AWS EC2 等多节点集群上的 giraph,那么我绝对建议修改 mapred-site.xml 文件添加参数,例如 mapred.job.tracker里面的值。

giraph.SplitMasterWorker=false 是调用 giraph runner 时必须设置的变量。这可以作为 -ca 下的自定义变量传入。另外我认为你正在使用 -w 参数,如果你在你的本地机器上 运行 它不应该超过 1,因为没有从属节点作为工作节点工作

例如hadoop jar /usr/local/giraph1.0/giraph-examples/target/giraph-examples-1.1.0-for-hadoop-2.7.0-jar-with-dependencies.jar org.apache.giraph.GiraphRunner org.apache.giraph.examples.ConnectedComponentsComputation -vif org.apache.giraph.io.formats.IntIntNullTextInputFormat -vip -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op -w 5 -ca giraph.SplitMasterWorker=false