4

単純化した使用例を説明しようと思います。がある:

  1. 単語を数えるSparkアプリケーション。
  2. フォーム付きの Web ページを提供する Web サーバー。
  3. このフォーム内に単語を入力して送信できるユーザー。

サーバーは単語を受け取り、それを Spark アプリケーションに送信します。Spark アプリケーションは、いくつかのデータに基づいてこの単語を入力として受け取り、この単語は再計算を伴うジョブを開始します。Spark が計算を完了すると、Web ページに結果を表示する Web サーバーに結果が送信されます。

問題は、spark アプリケーションと Web サーバー間の通信をどのように確立できるかということです。

ここでは、spark-jobserver または spark-streaming が役立つと思いますが、それについてはわかりません。

4

1 に答える 1

3

これに役立つプロジェクトがいくつかあります。

これを達成するためにspark-submit cliを回避するいくつかの厄介なsystemExec作業があるため、通常、sparkジョブを管理するために別のWebサーバーを実行します。明らかに、これはプライマリ アプリケーションとは異なるポートで実行され、プライマリ Web アプリケーションのサーバー コンポーネントからのみアクセスできます。

これを最も顕著に処理するいくつかのオープン ソース プロジェクトがあります。

https://github.com/spark-jobserver/spark-jobserver

https://github.com/cloudera/livy

于 2016-06-17T21:24:39.987 に答える