首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从DataFlow模板中提取REST API参数?

如何从DataFlow模板中提取REST API参数?
EN

Stack Overflow用户
提问于 2020-12-08 18:10:03
回答 1查看 331关注 0票数 0

我想在Google Cloud平台中使用Cloud Function触发数据流。

在Cloud Function中,我使用Python这样调用API

代码语言:javascript
复制
from googleapiclient.discovery import build

service = build('dataflow', 'v1b3', cache_discovery=False)

request = service.projects().locations().templates().launch(
    projectId=projectId, gcsPath=srcDataFlowTemplate, location='us', body={
        'jobName': jobName,
        'parameters': parameters,
        'environment':environment
    }
)

response = request.execute()

这是我正在启动的数据流模板中的管道:

代码语言:javascript
复制
(p
   | 'Create PCollection' >> beam.Create(inputFile)
   | 'Read from a File' >> beam.io.ReadAllFromText(skip_header_lines=1)
   | 'Write to BigQuery' >> beam.io.Write(beam.io.WriteToBigQuery (table,
                project=projectId,
                dataset=dataset,
                schema=schema,
                create_disposition=beam.io.BigQueryDisposition.CREATE_IF_NEEDED,
                write_disposition=beam.io.BigQueryDisposition.WRITE_APPEND
        )
    )
)

在数据流模板中-是否可以从应用程序接口调用中提取此'inputFile‘,它存储在请求主体中的parameters属性和projectId下?

EN

回答 1

Stack Overflow用户

发布于 2020-12-09 20:26:53

在具有光束框架的数据流上运行作业时,可以使用DataflowRunner。当您创建管道时,您使用"options“对象创建它。

代码语言:javascript
复制
p = beam.Pipeline(options=options)

This object contains basic parameters,例如projectId,您可以对其进行扩展以添加您自己的管道参数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65196889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档