Я создаю API RESTful поверх Apache Spark. Выполнение следующего Python script с помощью spark-submit
работает нормально:
import cherrypy
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('myApp').getOrCreate()
sc = spark.sparkContext
class doStuff(object):
@cherrypy.expose
def compute(self, user_input):
# do something spark-y with the user input
return user_output
cherrypy.quickstart(doStuff())
Но googling вокруг я вижу такие вещи, как Livy и spark-jobserver. Я прочитал документацию этих проектов и пару учебных пособий, но я до сих пор не полностью понимаю преимущества Livy или spark-jobserver над простым script с CherryPy или Flask или любой другой веб-картой. Это о масштабируемости? Контекстное управление? Что мне здесь не хватает? Если то, что я хочу, это простой API RESTful с небольшим количеством пользователей, есть ли проблемы с Livy или spark-jobserver? Если да, то почему?