通过 RESTful API 查询 SPARK 作业生成的数据



我对火花很陌生。我使用 SPARK 作业生成了一个包含大约 420 MB 数据的文件。我有一个 Java 应用程序,它只需要根据某些条件从该文件并发查询数据并以 json 格式返回数据。到目前为止,我已经找到了两个用于 SPARK 的 RESTful API,但它们仅用于远程提交 SPARK 作业和管理 SPARK 上下文,

1)Livy
2)Spark job-server

如果可用,还有哪些其他选项可以执行相同的操作(数据库除外)?

您实际上可以使用 Livy 以 RESTful 的方式将结果作为友好的 JSON 返回!

session_url = host + "/sessions/1"
statements_url = session_url + '/statements'
data = {
        'code': textwrap.dedent("""
        val d = spark.sql("SELECT COUNT(DISTINCT food_item) FROM food_item_tbl")
        val e = d.collect
        %json e
        """)}
r = requests.post(statements_url, data=json.dumps(data), headers=headers)
print r.json()

我的参考答案:Apache Livy:通过REST查询Spark SQL:可能吗?

相关:Livy 服务器:以 JSON 形式返回数据帧?

相关内容

  • 没有找到相关文章