Google cloud dataflow 使用apachebeam执行shell脚本

Google cloud dataflow 使用apachebeam执行shell脚本,google-cloud-dataflow,apache-beam,Google Cloud Dataflow,Apache Beam,假设有一个shell脚本存储在GCS存储桶中。可以使用Apache Beam执行它吗?如果是的话,怎么办? 我目前还没有尝试过任何东西,因为我在ApacheBeam或Dataflow的文档中找不到类似的东西。所以我只是想知道我必须采取什么方法。 谢谢。想从DoFn之类的东西执行一个完整的shell脚本是不寻常的,但也不是闻所未闻的。这就是你想做的吗?是否要为PCollection中的每个元素运行一次 如果是这样,您可能希望使用或将shell脚本的全部内容获取到一个字符串或字节数组中,然后将其作为

假设有一个shell脚本存储在GCS存储桶中。可以使用Apache Beam执行它吗?如果是的话,怎么办? 我目前还没有尝试过任何东西,因为我在ApacheBeam或Dataflow的文档中找不到类似的东西。所以我只是想知道我必须采取什么方法。
谢谢。

想从
DoFn
之类的东西执行一个完整的shell脚本是不寻常的,但也不是闻所未闻的。这就是你想做的吗?是否要为
PCollection
中的每个元素运行一次

如果是这样,您可能希望使用或将shell脚本的全部内容获取到一个字符串或字节数组中,然后将其作为一个侧面输入传递到您的
ParDo

然后可以使用Python中的
subprocess
或Java中的
ProcessBuilder
等工具执行它


如果您需要更具体的内容,请告诉我,我们可以迭代解决方案。

嗨,Pablo,我知道这是一个老问题,但我想运行类似的场景。我从一个库中获得了两个shell命令,该库在setup.py脚本运行时上载到worker。第一个命令是配置命令,第二个命令是依赖于config命令的执行。我试着用“;”把它们分开或者在子流程中使用“&&”,但没有成功。我还尝试了使用这两个命令的os.system,但都没有成功。我无法将它们分开,因为第二个子进程没有第一个子进程配置设置。请让我知道你的想法。thxy您可能可以执行以下操作:
子流程调用(['sh','-c',echo“hi”和&echo“why”])
-除非您替换了两个命令。可能吗?