我在使用从PubSub读取并写入BigQuery的Dataflow管道时遇到了一些问题。
我不得不耗尽它来执行更复杂的更新。当我重新运行管道时,它开始以正常速率读取PubSub,但是几分钟后它停止了,现在它不再是从PubSub读取消息了!数据水印几乎延迟了一周,没有进展。根据Stackdriver的说法,订阅中有超过300k条消息可供阅读。
它在更新之前正常运行,现在即使我将管道降级到之前的版本(更新前运行的版本),我仍然无法使其工作。
我尝试了几种配置:
1)我们使用Dataflow自动缩放,我尝试使用功能更强大的工作人员(n1-standard-64)启动管道,并将其限制为10名工作人员,但它不会提高性能,也不会自动缩放(仅保留最初的工人)。
2)我尝试通过diskSizeGb(2048)和diskType(pd-ssd)提供更多磁盘,但仍然没有改进。
3)检查PubSub配额和拉/推率,但这绝对正常。
管道显示没有错误或警告,只是没有取得进展。
我检查了实例资源,CPU,RAM,磁盘读/写速率都可以,与其他管道相比。唯一更高一点的是网络速率:大约400k字节/秒(2000包/秒)传出和300k字节/秒传入(1800包/秒)。
你建议我做什么?
答案 0 :(得分:1)
适用于Java的Dataflow SDK 2.x和适用于Python的Dataflow SDK基于Apache Beam。更新时,请确保您将documentation作为参考。对于缓慢运行的管道和缺乏输出的配额可能是一个问题,但你提到这些都很好。
似乎有必要看看这份工作。我建议在PIT here上打开一个问题,我们来看看。确保提供您的项目ID,工作ID和所有必要的详细信息。