Что может привести к тому, что в распределенном в будущем будущем государство будет «потеряно»? - PullRequest
0 голосов
/ 18 ноября 2018

Используя распределенный кластер dask, я заметил, что некоторые из фьючерсов долгосрочных задач переключаются с pending на finished, другие переключаются с pending на lost.

У меня есть подозрение, что некоторые из задач lost все еще выполняются, как я вижу dask-worker процессы с высокой загрузкой ЦП, даже если ни у одного из фьючерсов больше нет статуса pending.

Что именно означает lost здесь?Могут ли долгосрочные задачи (часы) быть классифицированы как lost, поскольку они могут помешать работнику отчитываться перед планировщиком?Что еще может вызвать состояние lost и как на это реагирует планировщик?

1 Ответ

0 голосов
/ 18 ноября 2018

Это означает, что по какой-то причине у планировщика больше нет информации, необходимой для выполнения этой задачи. Обычно это происходит из-за потери неупругих данных работником, например, если вы явно разбрасываете часть данных на одного работника, а затем этот работник отказывает.

>>> future = client.scatter(123)
>>> x = client.submit(f, future)

 ... worker holding future/123 dies

>>> x.status
'lost'

Это вообще редко. Обычно, если рабочий выходит из строя, планировщик может реплицировать всю работу для конкретной задачи в другом месте.

Как всегда, предоставление минимально полного проверяемого примера может помочь в определении того, что происходит в вашей конкретной ситуации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...