将Spark应用程序与Web服务器连接

时间:2016-06-17 21:18:38

标签: apache-spark spark-streaming spark-jobserver

我将尝试解释我的简化用例。有:

  1. 计算单词的Spark应用程序。
  2. 提供带有表单的网页的网络服务器。
  3. 可以在此表单中输入单词并提交的用户。
  4. 服务器接收该字并将其发送到Spark应用程序。 Spark应用程序将此单词作为输入,基于某些数据,此单词启动重新计算的作业。一旦Spark完成计算,它就会将结果发送到Web服务器,该服务器会在网页上显示结果。

    问题是,如何在spark应用程序和Web服务器之间建立通信?

    我想,火花作业服务器或火花流可以帮助我,但我不确定。

1 个答案:

答案 0 :(得分:3)

有一些项目可以帮助您解决这个问题。

通常你运行一个单独的网络服务器来管理火花作业,因为有一些凌乱的systemExec围绕spark-submit cli来完成这个任务。显然,它运行在与您的主应用程序不同的端口上,并且只能由主Web应用程序的服务器组件访问。

有一些开源项目会为您解决这个问题:

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

https://github.com/cloudera/livy