Я поддерживаю систему хранения данных, которая включает в себя множество зависимых заданий (импорт, преобразование данных и т.д.). Я использовал crontab
в Linux для управления ими, пока зависимость между заданиями не станет сложной.
В основном я ищу замену cron
которая поможет мне в следующем сценарии:
Выполнить задание А в
00:05
(легко). Обычно это импортная работа.Запланируйте выполнение заданий B, C, D после завершения задания A. Задание D запускается только через 30 минут после завершения задания A (для распределения нагрузки). Это рабочие места преобразования.
Задание E запускается, когда все B, C, D заканчиваются. Обычно это работа по переносу агрегированных данных в веб-интерфейсную базу данных.
Все это происходит на одном узле.
Я полагаю, это выглядит как график топологии.
A--> B -------------->---> E
\-> C -------------/ /
\-> (delay 30mins) -> D
Существуют ли такие простые инструменты на основе Linux, которые поддерживают это? Я посмотрел на Chronos Airbnb, но это кажется излишним для моей необходимости.
Изменить: приведенный выше сценарий просто упрощенная версия того, что происходит. У нас намного больше ежедневных рабочих мест, и зависимость намного сложнее. Так что я на самом деле ищу несколько "cron на стероидах", а не сценарии bash для каждого сценария.