Google cloud platform 如何从数据流模板中提取RESTAPI参数?
我想在谷歌云平台上用云功能触发数据流 在Cloud函数中,我使用Python调用如下函数:Google cloud platform 如何从数据流模板中提取RESTAPI参数?,google-cloud-platform,apache-beam,google-apis-explorer,Google Cloud Platform,Apache Beam,Google Apis Explorer,我想在谷歌云平台上用云功能触发数据流 在Cloud函数中,我使用Python调用如下函数: from googleapiclient.discovery import build service = build('dataflow', 'v1b3', cache_discovery=False) request = service.projects().locations().templates().launch( projectId=projectId, gcsPath=srcDa
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()
这是我正在启动的数据流模板中的管道:
(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属性下,并从API调用中投影?当您使用Beam framework在数据流上运行作业时,您使用DataflowRunner。创建管道时,使用“选项”对象创建管道
,例如projectId,您可以扩展它以添加自己的管道参数。当您使用Beam framework在Dataflow上运行作业时,您可以使用DataflowRunner。创建管道时,使用“选项”对象创建管道
,例如projectId,您可以对其进行扩展以添加自己的管道参数。是否可以列出所需的变量?为什么?我可以很容易地得到一些,其他的更难,我想在挖掘之前确定!我已经更新了我的问题。我是新来的,所以我不知道这是否可行。基本上,我想在调用后在数据流模板中提取这个{projectId}:https://DataFlow.googleapis.com/v1b3/projects/{projectId}/templates:launch您能列出您想要的变量吗?为什么?我可以很容易地得到一些,其他的更难,我想在挖掘之前确定!我已经更新了我的问题。我是新来的,所以我不知道这是否可行。我基本上是想在调用之后在数据流模板中提取这个{projectId}:https://DataFlow.googleapis.com/v1b3/projects/{projectId}/templates:launch
p = beam.Pipeline(options=options)