Python 如何准备GCP/Apache Beam数据流模板?

Python 如何准备GCP/Apache Beam数据流模板?,python,google-cloud-platform,google-cloud-dataflow,apache-beam,Python,Google Cloud Platform,Google Cloud Dataflow,Apache Beam,好吧,我肯定是遗漏了什么。我需要什么来作为模板准备管道?当我尝试使用via暂存我的模板时,它会运行模块,但不会暂存任何内容。它似乎正常工作,没有出现错误,但我没有看到任何文件实际添加到bucket位置,请在my-template_位置中进行侦听。我的python代码应该出现在那里吗?我想是这样吧?我已经确保安装了所有的beam和google cloud SDK,但也许我遗漏了什么?要准备此数据流模板,您需要做什么?我也可以手动将文件放入一个bucket并从那里运行它吗?以下是我当前使用的模板:

好吧,我肯定是遗漏了什么。我需要什么来作为模板准备管道?当我尝试使用via暂存我的模板时,它会运行模块,但不会暂存任何内容。它似乎正常工作,没有出现错误,但我没有看到任何文件实际添加到bucket位置,请在my-template_位置中进行侦听。我的python代码应该出现在那里吗?我想是这样吧?我已经确保安装了所有的beam和google cloud SDK,但也许我遗漏了什么?要准备此数据流模板,您需要做什么?我也可以手动将文件放入一个bucket并从那里运行它吗?以下是我当前使用的模板:

导入json 将apache_梁作为梁导入 从apache_beam.options.pipeline_options导入PipelineOptions 从apache_beam.io.gcp.bigquery导入解析_table_schema_from_json GC_项目=‘我的项目’ BUCKET='测试BUCKET' STAGING_BUCKET='%s/测试'%BUCKET' 临时存储桶='%s/测试'%BUCKET' RUNNER='DataflowRunner' RUNNER='DirectRunner' 管道参数=['-保存主会话'] 管道参数=[] 管道参数.append'-project=%s'%GC\u项目 管道参数。追加“-runner=%s”%runner 管道参数.append'-staging\u location=gs://%s'%staging\u BUCKET 管道参数追加“-temp\u location=gs://%s”%temp\u BUCKET BQ_数据集=‘湖泊’ BQ_表=‘无论什么’ 模式_OBJ=[ {name:id,type:STRING,description:}, {名称:值,类型:字符串,描述:} ] 类ContactUploadOptions管道选项: @类方法 def_add_argparse_argscls,解析器: parser.add_value_provider_参数 “-infle”, 类型=str, help='输入文件的路径', default='gs://%s/data\u files/test.csv'%1!' def runargv=无: 打印“运行” p=梁。管道选项=管道选项管道参数 直线=p |梁,创建[ {id:一些随机名称,值:我不知道}, {id:id2,value:which man}] schema_str='{fields:'+json.dumpsSCHEMA_OBJ+'}' schema=parse_table_schema_from_jsonschema_str 输出\u目标='%s.%s'%BQ\u数据集,BQ\u表 线 |“将行写入BigQuery”>>beam.io.WriteToBigQuery 输出目的地, schema=schema, create_disposition=beam.io.BigQueryDisposition.create_如果需要, write\u disposition=beam.io.BigQueryDisposition.write\u APPEND p、 运行。等待,直到完成 如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu': 运行管道参数
另外,如果有人可以链接一些sdk文档/资源,解释上面的登台说明应该如何/为什么工作,那就太棒了

临时位置是运行作业时加载临时文件的位置。您没有提到将创建模板的模板位置


请参阅和的链接

今天上午,我正在尝试重置python环境和依赖项,以尝试修复此问题,然后可能尝试手动转移模板。如果失败了,我可能会尝试javajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajavajava。所以它工作正常,但从未考虑过我通过命令行传入的模板位置Ooohhh是的,我明白你的意思,是的,哈哈,好的,我的运行时参数没有被考虑,这意味着模板位置从未被查看,因此从未暂存我的模板。。。你好,维克拉姆,有时间的时候,你能看看这个吗