首页 > 解决方案 > 如何保持或检查 Apache Livy 连接?

问题描述

正如我们所知,创建 Apache Livy 连接的成本很高。它将创建新的应用程序并上传任务文件。

我的情况是用户可以使用我用 Java 编写的 Web Api 提交作业,然后我使用 Apache Livy Client 提交作业到 spark。

我想保留一个或固定数量的 Livy 客户端实例,并且我可以检查客户端状态,例如连接池。

标签: apachelivy

解决方案


如果你的工作是一个有限的工作单元,那么你应该使用 Livy 的Batch抽象而不是Session. Sessions 用于交互式工作(例如,Jupyter Notebook 或 Apache Zeppelin),用户在其中提交一些查询、评估结果并提交更多。Batch,另一方面,最类似于您通常使用spark-submit可执行文件提交的内容;它也会在工作任务完成后自行结束,并自行清理,因此不需要连接池。也就是说,连接池对于 a 也没有什么意义Session,因为每个会话都有一个状态(在所述会话中运行的过去语句中定义的变量),并且该状态不是(也不应该)共享


推荐阅读