提问者:小点点

云数据流流式处理连续插入失败


我的数据流管道功能如下:

Read from Pubsub
Transform data into rows
Write the rows to bigquery

有时会传递无法插入的数据。没关系,我知道失败的原因。但是dataflow不断尝试一遍又一遍地插入这些数据。我想限制重试的次数,因为它会使worker日志膨胀,包含不相关的信息。因此,当相同的错误重复出现时,很难排查问题所在。

在本地运行管道时,我得到:

no evaluator registered for Read(PubsubSource)

我希望能够在本地测试管道。但是数据流似乎不支持PubSub的此选项。

为了清除错误,我别无选择,只能取消管道并在Google Cloud上运行新作业。这需要时间

数据流UI

职位ID:2017-02-08_09_18_15-3168619427405502955


共1个答案

匿名用户

要使用无界数据集在本地运行管道,请根据@Pablo的建议使用InProcessPipelineRunner

        dataflowOptions.setRunner(InProcessPipelineRunner.class);

在本地运行该程序使我能够处理异常错误并快速优化我的工作流程。