当前位置: 首页 > 知识库问答 >
问题:

运行数据流管道时不显示模板文件

常波鸿
2023-03-14

我要运行的命令是Python apache_beam_test.py--runner DataflowRunner--project prototypes-project--staging_location gs://dataflow_templates/staging--temp_location gs://dataflow_templates/temp--template_location gs://dataflow_templates/

然而,我确实得到了一个关于选项的警告:

C:\python38\lib\site-packages\apache_beam\io\gcp\bigquery.py:1677:BeamDeprecationWarning:options自第一个稳定发布以来就不推荐使用。不支持对.options的引用实验=p.options.view_as(DebugOptions).exportations或[]

C:\python38\lib\site-packages\apache_beam\io\gcp\bigquery_file_loads.py:900:BeamDeprecationWarning:options自第一个稳定发布以来就不推荐使用。不支持对.options的引用temp_location=p.options.view_as(GoogleLoudOptions).temp_location

这是否意味着我的命令行参数将不会被解释,如果是,我如何将DataFlow/Beam模板获取到我的GCS中,以便我可以从DataFlow UI引用它们,并在以后再次运行它们?

非常感谢您的帮助!

共有1个答案

金理
2023-03-14

问题确实是cli标志需要显式地传递到管道选项中。

由于我没有将任何自定义标志添加到我的项目中,我错误地认为Beam会自动处理标准标志,但事实并非如此。

基本上,即使没有新的参数要添加,您也必须遵循这一点。

 类似资料:
  • 我正在尝试设置我的开发环境。我一直在使用pubsub模拟器进行开发和测试,而不是在生产中使用谷歌云pubsub。为此,我设置了以下环境变量: 这适用于python google pubsub库,但当我切换到使用java apache beam进行google数据流时,管道仍然指向生产google pubsub。管道上是否有需要设置的设置、环境变量或方法,以便管道读取本地pubsub仿真器?

  • 来自django。数据库导入模型 类抱怨(模型。模型): “”“您需要表单提交时的成功视图。这将在用户提交表单后呈现感谢消息。然后在URL.py上,导入成功视图,然后添加路径('success',successView,name='success'),”“”def successView(请求):返回呈现(请求,“tem/success.html”)

  • 我正在PythonApacheBeamDataflow中进行一个项目,我需要根据启动数据流模板提供的运行时参数命名bigquery表。 到目前为止,我运气不好,它要么为我提供了运行时参数的定义,要么提供了一个空字符串。 所以我基本上需要这个来工作: 命名表中的写BigQuery函数是我有麻烦的地方,我也尝试使用custom_options.table_name,声明变量为全局等。 我已经创建了一个

  • 上节课我们学习了如何将信息渲染到模板之中,但是这些信息都是直接传入模板引擎中进行渲染的,有的时候我们想要转换一下这些数据才进行渲染,这就需要使用到 Go 模板语言中的一些其他用法。 模板函数 比如我们需要从.Values中读取的值变成字符串的时候就可以通过调用quote模板函数来实现:(templates/configmap.yaml) apiVersion: v1 kind: ConfigMap

  • 请参考此链接,了解如何运行基于Java的云数据流-https://cloud.google.com/dataflow/docs/quickstarts/quickstart-java-maven 使用以下命令创建模板 然后要使用DataflowRunner运行作业,请执行以下命令 但当试图运行上面的命令时,java会出现以下错误。lang.RuntimeException:无法从工厂方法Dataf

  • 问题内容: 这是我的AngularJs指令。它原本希望在模板中显示div,但是在运行代码时却什么也没有显示。 这是HTML 这是AngularJS指令 这是演示 问题答案: 声明指令时,您使用了名称,但这是错误的。您应该使用,因为它将被转换为元素。 指令名称中的任何大写字母都将转换为连字符,因为元素中未使用大写字母。例如将翻译为。 正如其他人提到的,AngularJS使用以下标准化规则进行标准化: