web-dev-qa-db-ja.com

マスターURLを解析できませんでした: 'spark:http:// localhost:18080'

コードを実行しようとすると、次の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();}}

この問題をどのように修正できますか?

9
Anas

問題は、SparkConf.setMaster()に渡すURLに2つのスキーマを指定することです。

sparkはスキーマであるため、httpの後にsparkを追加する必要はありません。その他の例については、 SparkConf.setMaster() のjavadocを参照してください。

したがって、使用する必要があるマスターURLは"spark://localhost:18080"です。この行を変更します。

SparkConf conf = new SparkConf().setAppName("App_Name")
    .setMaster("spark://localhost:18080").set("spark.ui.port","18080");
8
icza

マスターの標準ポートは18080ではなく7077です。おそらく7077を試すことができます。

3
ruze