在替换我的旧appengine-mapreduce
工作时,我需要一种方法来从我的 cron 触发这个 python 数据流工作。
我已阅读https://cloud.google.com/blog/big-data/2016/04/scheduling-dataflow-pipelines-using-app-engine-cron-service-or-cloud-functions,但不清楚Python的完整翻译。
Cloud Functions 没有安装 python,我不确定是否/如何安装便携式 python。所以我假设从我的托管 VM Python 实例触发会更容易......据我所知,它将是这样的:
- 我正在使用 GAE 灵活虚拟机(无沙盒)。
- 我可以将 apache_beam 库(运行
my_dataflow.py
)包含到我的 docker 映像中。 - 我可以通过我的项目推送上传这些文件,以便可以从 VM 磁盘访问它们:
my_dataflow.py
、setup.py
(安装我的库依赖项)和apache-beam.tar.gz
(因为我正在编写尚未在 PyPI 上发布的 0.7.0 API) - 我可以调用
my_dataflow.run()
指向 PipelineOptionssetup.py
和apache-beam.tar.gz
。
是这样,还是我错过了任何其他步骤?希望避免在这里找错树,并担心在花了几个小时推倒重来试图让它发挥作用后遇到已知的不可逾越的路障。