нужна отказоустойчивая распределенная система обработки данных - PullRequest
0 голосов
/ 19 января 2020

Я искал процессор для использования. У меня есть работа, которая идет на 4-10 хостов API URL в зависимости от конфигурации. Он запрашивает у каждого из этих хостов список объектов для запроса на основе некоторых параметров. Эти хосты возвращают списки запросов (около 1000 из них каждый). Затем задание запрашивает API URL для получения более подробной информации о каждой возвращаемой вещице. Это приводит к большому количеству звонков. Вызовы возвращают данные, в которых есть сотни элементов, которые могут быть отображены / уменьшены (первая причина, хотя у меня было oop).

Проблема возникает, когда хост API не может обработать трафик c и возвращает ошибку. Я теряю некоторое время уже завершенной обработки, когда это происходит. Мне нужна вещь типа шины, которая не будет d ie при удаленном вызове API. Он также не должен отбрасывать этот запрос данных. Он должен завершить sh все, что может, и поместить неисправные в отдельную очередь, чтобы повторить попытку с какой-то стратегией. Если они все еще терпят неудачу со стратегией резервного копирования, должна быть некоторая ручная или алгоритмическая попытка c, которая не отбрасывает уже выполненную работу. Их следует повторять до тех пор, пока кто-то или кто-то не скажет «черт с ним, это нехорошо» и позволит продолжить агрегирование данных, что приведет к выполнению задания с данными, загруженными в БД.

Я посмотрел на luigi, airflow и Apache Спарк, и теперь я в замешательстве больше, чем когда я начинал.

Пожалуйста, дайте мне предложения.

...