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

谷歌云数据流:使用DirectPipelineRunner(本地作业)访问管道中的谷歌云发布/订阅?

赏彭薄
2023-03-14

我已经使用Google云数据流SDK编写了一个流式管道,但我想在本地测试我的管道。我的管道从Google Pub/Sub获取输入数据。

是否可以使用DirectPipelineRunner(本地执行,而不是在Google云中)运行访问发布/订阅(pubsubIO)的作业?

我在以普通用户帐户登录时遇到权限问题。我是项目的所有者,我正在尝试访问发布/子主题。

共有3个答案

谈灵均
2023-03-14

只是为了帮助任何想搜索这个的人,

使用最新版本,您可以做到这一点。如果要在本地运行管道,请使用“DirectRunner”在本地运行。使用“DataflowRunner”在云中运行此操作。

设置分段位置和流道,如下所示。

streamingOption.setStagingLocation(PipelineConstants.PUBSUB_STAGING_LOCATION);

streamingOption.setRunner(DataflowRunner.class);

或者将其作为参数传递。

你能详细阐述一下你所面临的权限问题吗?

柴飞扬
2023-03-14

DirectPipelineRunner当前不支持PubsubIO。当在本地使用时,您将收到一个错误,说明“没有为PubsubIO. Read注册评估器”。

您的权限问题可能来自其他来源。

刘玉石
2023-03-14

InProcessPipelineRunner是Data Flow SDK for Java 1.6.0中引入的DirectPipelineRunner的新版本,其中包括对无边界PCollections的支持。

(注意:在Apache Beam中,此功能已经添加到DirectRunner中,但在Java数据流SDK中,我们要到2.0才能做到这一点,因为它更好地检查模型可能会导致额外的测试失败,我们认为这是一个向后不兼容的更改。因此,目前添加了配套的InProcessPipelineRunner。)

对于测试延迟和无序数据,还有一些新的强大支持。

 类似资料:
  • 我尝试运行一个数据流管道,使用DirectPipelineRunner从本地计算机(windows)读取数据,并写入Google云存储。作业失败,出现以下指定FileNotFoundException的错误(因此我认为数据流作业无法读取我的位置)。我正在本地计算机上运行作业,以运行我创建的基于GCP的模板。我可以在GCP数据流仪表板中看到它,但由于以下错误而失败。请帮忙。我还尝试了本地机器的IP或

  • 我正在运行数据流作业从气流。我需要说我是气流的新手。数据流(从气流运行)正在成功运行,但我可以看到气流在获得工作状态时遇到了一些问题,我收到了无限的消息,比如: 谷歌云数据流作业尚不可用。。 以下是将所有步骤添加到数据流后的日志(我将{project ectID}和{jobID}放在它所在的位置): 你知道这是什么原因吗?我找不到与此问题相关的任何解决方案。我应该提供更多信息吗? 这是我在DAG中

  • 介绍如何在谷歌云平台获取在云联壹云平台需要使用的配置参数。 如何获取谷歌云服务帐号密钥信息? 纳管指定项目 打开“GCP Console中的IAM和管理-IAM页面”页面并登录。 单击顶部“选择项目”,选择需要授权的项目。 在左侧导航栏中选择“服务账号”,进入指定项目的服务账号页面。 单击 “创建服务账号” 按钮,进入创建服务账号页面。 配置服务账号名称、服务账号ID、服务账号说明等,单击 “创建

  • 我尝试过将deendpoint与云SQL和Hibernate集成。但是,每次都有错误。跟随我的测试: 1 -源文件夹中的persistence . XML:http://imgur.com/hKjf8Cs给我错误:http://imgur.com/QJe8rvq 2-资源文件夹中的persistence.xml给我错误: ServletInitializationParameters.java:5

  • 上面写着“Google Cloud Messaging(GCM)是一个免费服务”,但是为了使它能够运行,我需要在Google Cloud平台中创建一个项目,这需要花钱…那怎么免费呢?还是我错过了什么?

  • 我正在看新的谷歌云数据存储,看起来很棒。但有件事我不明白。。。它应该替代谷歌应用引擎数据存储吗?我如何在GAE内部使用它?它们之间有什么区别? 我在Java有一个GAE应用程序,它使用3个实体,每个实体都有数千行,我需要经常做连接...