当我尝试运行我的代码时,会抛出此Exception
:
Exception in thread "main" org.apache.spark.SparkException: Could not parse Master URL:spark:http://localhost:18080
这是我的代码:
SparkConf conf = new SparkConf().setAppName("App_Name").setMaster("spark:http://localhost:18080").set("spark.ui.port","18080");
JavaStreamingContext ssc = new JavaStreamingContext(sc, new Duration(1000));
String[] filet=new String[]{"Obama","ISI"};
JavaReceiverInputDStream<Status> reciverStream=TwitterUtils.createStream(ssc,filet);
JavaDStream<String> statuses = reciverStream.map(new Function<Status, String>() {
public String call(Status status) { return status.getText(); }
}
);
ssc.start();
ssc.awaitTermination();}}
我知道如何解决这个问题?
答案 0 :(得分:8)
问题是您在传递给SparkConf.setMaster()
的网址中指定了2个架构。
spark
是架构,因此您无需在http
之后添加spark
。有关更多示例,请参阅SparkConf.setMaster()
的javadoc。
因此,您应该使用的主网址是"spark://localhost:18080"
。改变这一行:
SparkConf conf = new SparkConf().setAppName("App_Name")
.setMaster("spark://localhost:18080").set("spark.ui.port","18080");
答案 1 :(得分:3)
master的标准端口是7077而不是18080.也许你可以试试7077。