昨天我在Google-Dataflow上开始了一个工作,通常需要10-30分钟。今天早上它还在运行。在查看stackdriver时,我看到了作业日志的一个重复循环:
I Refused to split GroupingShuffleReader <at position ShufflePosition(base64:AAAABOA3nVgAAQ) of shuffle range [ShufflePosition(base64:AAAAAAD_AP8A_wD_AAE), ShufflePosition(base64:AAAABOA3nVkAAQ))> at ShufflePosition(base64:AAAABOA3nVkAAQ)
E Refusing to split <at position ShufflePosition(base64:AAAABOA3nVgAAQ) of shuffle range [ShufflePosition(base64:AAAAAAD_AP8A_wD_AAE), ShufflePosition(base64:AAAABOA3nVkAAQ))> at ShufflePosition(base64:AAAABOA3nVkAAQ): proposed split position out of range
I Proposing dynamic split of work unit our-project-id;2017-09-26_09_29_26-14666853265610614017;1268593085087986642 at {"fractionConsumed":1.0,"position":{"shufflePosition":"AAAABOA3nVkAAQ"}}
I Setting node annotation to enable volume controller attach/detach 我现在取消了这项工作。在此工作开始之前,我将工作进程的磁盘大小减少到40 to,因为我们的配额为10,240 to(!)超过了大约15个作业。我会将磁盘大小增加到100‘t左右,但不需要更多。
有没有什么建议可以解决这个问题,或者如何解决这个问题?这个错误的真正含义也很有趣……
JobID: 2017-09-26_09_29_26-14666853265610614017

步骤"ToElasticsearch“在我取消作业前16小时显示。在这一步中,Elasticsearch的每篇文章只有http-Posts
发布于 2017-09-28 01:13:23
最可能的原因是你有一个快捷键。具体地说,其中一个键产生了大部分输出。在这种情况下,工作不能在可用的工人中很好地分配。您可以尝试在一个输入可能有多个输出的步骤之后插入一个Reshuffle转换。听起来,在ReadArticlesFromDatastore步骤之后这样做可能是正确的地方。
https://stackoverflow.com/questions/46442816
复制相似问题