-1

を実行するには、以下の私は上のアドバイスを必要とするシナリオ、代替を再帰的に火花提出ジョブ

シナリオです。

スパークプログラムは、Hiveのデータに対してETL操作と複雑な結合を実行する必要があります。

Nifiから取り込まれたデータは連続的なストリーミングであるため、取り込んだデータに対して1〜2分ごとにSparkジョブを実行します。

どちらをお使いになるのが最適ですか?

スケジューラを使用して1分ごとにspark-submitジョブをトリガーしますか? ジョブを再帰的にsparkクラスタに送信する際に、オーバーヘッドとタイムラグをどのように減らしますか?再帰的に1つのプログラムを実行するより良い方法はありますか?

スパークストリーミングジョブを実行しますか? スパークストリーミングジョブは1分ごとに自動的にトリガーされ、ハイブからデータを処理できますか? [スパークストリーミングは時間ベースでのみ起動できますか]

このようなシナリオを処理する効率的なメカニズムはありますか?アドバンス

答えて

0
  1. おかげであなたがより良い利用スパークストリーミングではなくバッチ毎分実行し、何かが必要な場合。

  2. より速いので、kafkaからデータを直接取得し、ハイブテーブルからデータを取得することができます。

あなたの質問には、より良いバッチ/ストリームがあります。スパークストリーミングは、「バッチ間隔」ごとに実行されるマイクロバッチプロセスと考えることができます。

以下をお読みください:https://spark.apache.org/docs/latest/streaming-programming-guide.html

+0

Ehud Lev。 – Achilles

+0

スパークストリーミングにカフカを使用するには2つの問題がありました。 1)Kafka Oracle Connectorに以下の問題がありました - https://github.com/confluentinc/kafka-connect-jdbc/issues/101 2)複数のデータ・ストリーム(複数の表からのデータの複数のトピック)で複雑な結合を実行することは非常にストリーミングでは難しい。これらの問題を回避する方法はありますか? – Achilles

関連する問題