2017-08-17 10 views
0

私はスパークストリーミングの初心者です。私はスパークストリーミングを使用してメッセージを生成し消費しています。しかし、私は消費者を止めることはできません。実際には、プロデューサーがメッセージを送信しないときにストリーミングを停止する必要があります。誰かがjavaコードでそれを手伝ってくれましたか?可能であれば、Javaのストリーミングを停止する小さなサンプルコードを与えてください。Javaでスパークストリーミングを停止するには?

私は、データが最後であるかどうか知らない

conf.set("spark.streaming.stopGracefullyOnShutdown","true"); 
// Execute the Spark workflow defined above 
streamingContext.start(); 
try { 
    streamingContext.awaitTermination(); 
} catch (Exception e) { 
    // e.printStackTrace(); 
} 
+1

[this](https://stackoverflow.com/questions/39990681/how-to-stop-running-spark-streaming-application-gracefully/39993190#39993190)の回答をご覧ください。 –

+0

** conf.set( "spark.streaming.stopGracefullyOnShutdown"、 "true"); ** でストリーミングを停止していません。これで私を助けてくれますか? @Glennie –

+0

あなたはポストに記載されているように停止信号を送信していますか? 'stopGracefullyOnShutdown'は、JVMが停止信号を受信したときにストリーミングジョブが正常に停止することを保証します。それは信号を送る)。 –

答えて

0

streamスパークバージョン2.2.0を使用しています。 おそらく、データが終了したと確信できる場合はjobを殺すことができます。

$spark-submit --master $masterurl --kill $driverid 

あなたはjobWEBUIdriveridを見つけることができます。

+0

私は窓で走っています。あなたのコマンドをどこで使うのですか? –

関連する問題