0
スパークストリーミングをテストしようとしています。私はスタンドアローンでクイックスタートのVMを持っています。次のコマンドを使用して、スパーク・シェルを開始しました:私は、次のステートメントを実行している火花シェルでスパークストリーミング - スパークストリーミングでNetcatメッセージが受信されない
spark-shell --master yarn-client --conf spark.ui.port=23123
:別の端末では
sc.stop()
import org.apache.spark.SparkConf
import org.apache.spark.streaming.StreamingContext
val conf = new SparkConf().setAppName("Spark Streaming")
val ssc = new StreamingContext(conf,org.apache.spark.streaming.Seconds(10))
val lines = ssc.socketTextStream("localhost",44444)
lines.print
は、次のコマンドでのnetcatサービスを開始しました:
スパーク・シェルでnc -lk 44444
は、ストリーミングコンテキストを開始し
ssc.start()
これまですべてが問題ありません。しかし、Netcatサービスで入力されたメッセージは、Sparkストリーミングでは受信されません。どこが間違っているのか分かりません。
それは働いた。ありがとうございました。理由は何ですか。あなたの説明は私の友人と長い道のりを行くでしょう。 – Ravi
あなたのスクリプト 'spark-shell - master yarn-client --conf spark.ui.port = 23123'では、--num-executors Nを指定します。ここで、Nは> = 2でなければなりません。あなたのコードが動作するためには、メッセージを受け取るために少なくとも2人のエグゼキュータが必要です。もう1つはメッセージを処理するために使用されます(あなたの場合はlines.print) – Tom
ありがとうございます。良い一日を。 – Ravi