【发布时间】:2021-03-18 09:05:12
【问题描述】:
我创建了一个看起来像这样的简单光束管道
with beam.Pipeline(options=options) as pipeline:
(pipeline | 'readFile' >> ReadFromText(..)
| 'parseJson' >> beam.Map(json.loads)
| 'convertToRow' >> beam.Map(lambda x: beam.Row(a=str(x['a'])))
| 'sql' >> SqlTransform(""" SELECT a FROM PCOLLECTION """)
| 'print' >> beam.Map(print)
)
并遵循此处提供的代码示例:https://cloud.google.com/dataflow/docs/guides/templates/using-flex-templates 能够将其作为弹性模板运行。这是我看到的错误
FileNotFoundError: [Error 2] No such file or directory: 'java': 'java'
我的(非常有限的)理解是,作为 flex 模板的一部分创建的 docker 映像只是在 Dataflow 上启动作业,所以不太明白为什么它抱怨 java 目录不存在。任何线索将不胜感激。
【问题讨论】:
标签: google-cloud-dataflow apache-beam