2016-12-05 5 views
1

Apache Kafkaデータストリームをソースとして接続するSpark 2.0.2構造化ストリーミングジョブがあります。仕事はkafkaからのツイッターデータ(JSON)を取り込み、CoreNLPを使ってセンチメント、品詞タグなどのデータに注釈を付けます。これはローカル[*]マスターでうまくいきます。しかし、スタンドアローンのSparkクラスタをセットアップすると、データを処理する作業者は1人だけです。私は同じ能力を持つ2人の労働者を持っています。ストラクチャードストリーミングジョブがすべてのワーカを使用していません

私の欠けている仕事を提出するときに設定する必要がありますか?私はspark-submitコマンドで--num-executorを設定しようとしましたが、私は運がありませんでした。

ポインタを正しい方向にあらかじめありがとうございます。

+0

Sparkは** RDDを正しく分割していないので、エグゼキュータに負荷が均等に分散されません。次に、起動時にコード内でパーティションを作成する方法を指定したい場合があります。たとえばhttps://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-rdd-partitions.htmlを参照してください。 –

答えて

0

多くのパーティションでカフカソースストリームを作成しました。これは処理部を9倍に高速化したようです。スパークとカフカにはたくさんのノブがあります。詳細を参照するにはKafka topic partitions to Spark streaming

関連する問題