谷歌数据流运行极其缓慢缓慢

时间:2018-11-26 09:45:18

标签: google-cloud-dataflow pipeline apache-beam dataflow

我编写了一个简单的程序来读取CSV(电子邮件)并在数据存储区中查找相关ID。这还将搜索AES加密电子邮件。

使用eclipse,它从directrunner正常运行,但是为了获得数据流中的流程图,我使用了dataflowruuner。这将启用执行图,但即使对于3条记录,其运行正弦也要超过30分钟。为什么?

使用-DataflowPipelineOptions options = PipelineOptionsFactory.as(DataflowPipelineOptions.class);

代替

    PipelineOptions options = PipelineOptionsFactory.fromArgs(option).withValidation().create();

1 个答案:

答案 0 :(得分:0)

这取决于您的管道的细节。通常,与直接运行程序相比,在Dataflow中管道启动时间会更慢。例如。它需要构建和上载管道,然后启动机器,然后需要获取管道定义并开始执行它。在直接运行程序中执行管道时,通常只需像在其他程序中一样在本地编译和运行代码即可。因此,对于数据量较小的琐碎情况,很难并行化使用Dataflow的性能好处。

但是,如果管道从不停止在Dataflow中,那么您需要查看是否存在阻止其结束的错误(例如,可能存在一些身份验证错误,节流,资源不足等)。您可以从查看Stackdriver开始:https://cloud.google.com/dataflow/docs/guides/using-stackdriver-monitoring

一些文档链接,希望对您有所帮助: