2017-07-02 10 views
4

私はSpark Structured Streamingでバックプレッシャ機能を分析しています。誰もが詳細を知っていますか?プロセス受信レコードをコードでチューニングすることは可能ですか? ありがとうSpark Structured Streamingが背圧を処理する方法は?

+0

がどのように背圧を定義するのでしょうか? –

+0

つまり、レコードの取り込みレートを動的に管理する機能です。 On Sparkストリーミングを有効にして、Kafkaを使用している場合はkafka.maxRatePerPartitionで作業できます。ストラクチャードストリーミングはどうですか?それは内部的にどのように機能しますか?それはプログラマによって管理可能ですか? –

答えて

3

ストラクチャードストリーミングで各内部バッチのサイズを動的に変更する場合は、NOです。ストラクチャードストリーミングにはレシーバベースのソースはありませんので、まったく必要ありません。別の観点から見ると、Sparkは他のアプリケーションにデータをKafkaにプッシュする速度を遅くするように指示できないため、構造化ストリーミングは実際のバックプレッシャーを行うことができません。

一般に、Structured Streamingは、デフォルトでできるだけ早くデータを処理しようとします。ファイルソースにはmaxFilesPerTrigger、カフカソースにはmaxOffsetsPerTriggerなど、処理速度を制御できるオプションが各ソースに用意されています。詳細については、以下のリンクを読む:

http://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#input-sources http://spark.apache.org/docs/latest/structured-streaming-kafka-integration.html

+0

ありがとうございます。 –

関連する問題