【发布时间】:2019-11-21 13:49:11
【问题描述】:
我想使用数据流并行处理我存储在谷歌存储中的一堆视频剪辑。我的处理算法具有非 python 依赖项,预计会随着开发迭代而改变。
我的偏好是使用带有逻辑的 dockerized 容器来处理剪辑,但似乎不支持自定义容器(2017 年):
use docker for google cloud data flow dependencies
虽然现在可能支持它们 - 因为它正在开发中:
Posthoc connect FFMPEG to opencv-python binary for Google Cloud Dataflow job
根据此问题,可能会提取自定义 docker 映像,但我找不到任何有关如何使用数据流执行此操作的文档。
另一个选项可能是使用 setup.py 安装任何依赖项,如这个过时的示例中所述:
但是,在运行示例时,我收到一个错误,即没有名为 osgeo.gdal 的模块。
对于纯 python 依赖项,我也尝试传递 --requirements_file 参数,但我仍然收到错误:Pip install failed for package: -r
根据我对--requirements_file 和--setup_file 的测试,我可以找到将依赖项添加到 apache_beam 而非数据流的文档,并且似乎 apache_beam 指令不起作用。
【问题讨论】:
-
您说您尝试过使用
--setup_file,但没有成功。那正确吗?我们在 Beam 中有一个依赖它的示例。你能检查一下,看看有没有帮助? github.com/apache/beam/tree/master/sdks/python/apache_beam/… -
使用 setup_file 的 landsat 示例对我不起作用。我尝试了 juliaset 示例,它确实有效!谢谢!问题解决了。未来有计划支持 docker 镜像吗?
-
Docker 镜像将支持使用可移植框架的管道。我无法对时间表做出很好的预测,但计划是支持自定义容器,是的。
标签: python tensorflow google-cloud-platform google-cloud-dataflow apache-beam