[英]Run Template on the Cloud Dataflow service
我正在尝试运行我在 Google DataFlow 中开发的本地模板。
问题是当我在 Google Cloud Shell 中运行它时:
python -m dataflow.py --project poc-cloud-209212 --temp_location gs://<...>
我收到这个错误
/usr/bin/python: No module named apache_beam
所以我尝试了一个更简单的例子: 字数
就像谷歌说的,我执行:
python -m wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt --output gs://<...> --runner DataflowRunner --project <project> --temp_location gs://<...>
我收到了这个错误:
/usr/bin/python: No module named past.builtins
如果我在没有 .py 的情况下执行:
python -m wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt --output gs://<...> --runner DataflowRunner --project <project> --temp_location gs://<...>
同样,同样的错误,但有“更多”的信息
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/<...>/wordcount.py", line 26, in <module>
from past.builtins import unicode
ImportError: No module named past.builtins
怎么了? 如何在 Google Cloud Dataflow 中运行这些模板?
我需要像在本地那样在 Google Cloud 中设置环境还是默认设置?
最后我做到了。
这是如何:
在 Google Cloud 中使用 python 2.7 安装 virtualenv(默认安装了 3.5,Dataflow 不能使用 python3)
virtualenv env --python=python2
激活此 virtualenv 后,您可以在其中运行
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.