1

在替换我的旧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.pysetup.py(安装我的库依赖项)和apache-beam.tar.gz(因为我正在编写尚未在 PyPI 上发布的 0.7.0 API)
  • 我可以调用my_dataflow.run()指向 PipelineOptionssetup.pyapache-beam.tar.gz

是这样,还是我错过了任何其他步骤?希望避免在这里找错树,并担心在花了几个小时推倒重来试图让它发挥作用后遇到已知的不可逾越的路障。

4

1 回答 1

-1

是的,模板目前只有 Java。

您可以改为使用此技术来定期调用您的管道。这不使用模板管道,而是启动普通管道。您可以通过运行子流程来启动管道来设置云功能来启动管道。有多种调用云函数的方法。这个使用应用程序引擎 cron 服务。

https://cloud.google.com/blog/big-data/2016/04/scheduling-dataflow-pipelines-using-app-engine-cron-service-or-cloud-functions

于 2017-03-27T18:21:46.873 回答