由于IO调用缓慢,Google Dataflow的工作人员几乎处于空闲状态

时间:2018-04-27 22:37:51

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

我们正在使用Google数据流创建管道。我们的一个案例是调用第三方服务来保存数据。

问题是这个第三方服务很慢(保存很复杂),但它可以处理许多并发连接。

我们发现,如果我们在ParDo中创建一个ThreadPoolExectutor(100)并进行异步调用而不是同步调用,我们每秒可以节省更多的数据。但这种做法并不好。

使用Dataflow有什么好方法?显然,我们可以使用100名工作人员运行Dataflow,但这不是一个非常便宜的解决方案 - 尤其是当每个工作人员使用5%CPU时。

你对我有什么想法吗?我们考虑过将PubSub用于此服务,但它会使我们的解决方案变得非常复杂。

在直接跑步者中有一个targetParallelism参数,在dataflow runner中有类似的内容吗?

0 个答案:

没有答案