使用Apache Beam + Flink运行不安全代码

iaqfqrcu  于 2023-06-20  发布在  Apache
关注(0)|答案(1)|浏览(147)

我一直在Apache Beam中进行调查,看看这是否是解决我的问题的方法,但我还没有找到所需的所有信息,所以我认为最好问问。
场景:SaaS服务的用户可以上传数据和自定义Python脚本,并构建一个管道来对这些数据执行脚本。因此,服务读取数据,以数据作为输入运行Python脚本,将输出传递给用户上传的下一个脚本,最后将结果保存在数据库中。
当前的解决方案是在Kubernetes kluster中使用Akka Actors和每个租户运行不安全Python代码的执行pod构建的,但我们想用其他东西来替换它。
需要支持:

  • 多租户:正在执行的Python脚本不能访问任何其他正在执行的脚本的内存或临时文件
  • 数据隔离:任何时候都不应该从任何其他用户(比如从正在运行的Python脚本)读取来自用户/tenat的输入、数据库或中间数据。
  • 由于Python脚本可以包含任何内容,因此它们必须在隔离的环境中运行。

这个问题可以用Apache Beam解决吗(也许可以用Apache Flink作为运行器),或者我应该寻找其他解决方案吗?
所有的提示和思考的事情都是受欢迎的!

7vux5j2d

7vux5j2d1#

我不能说太多关于FlinkRunner,但DataflowRunner是一个很好的适合你的情况。你可以检查How Cloud Dataflow works and how Dataflow Job is managed

相关问题