Мы хотели бы перенести планирование и управление последовательностью некоторых заданий импорта Kettle из проприетарной реализации в версию Spring Batch, внедрение хорошей практики.
Я собираюсь использовать сервер Spring Cloud Data Flow (SCDF)реализовать и запустить настраиваемую последовательность существующих внешних заданий импорта.
Пользовательский интерфейс редактора задач консоли SCDF кажется многообещающим для сборки потока. Таким образом, одна задача оборачивает одну Spring Batch, которая за один шаг выполняет только тасклет, запускающий и опрашивающий Carte REST API. Имеет ли это смысл до сих пор?
Не могли бы вы предложить лучшую реализацию?
Ограничения и требования:
- Внешние задания Kettle запускаются и опрашиваются с помощью Carte REST. API. На самом деле, это одна реализация задания Kettle, вызываемая с отдельными параметрами для каждой импортируемой сущности.
- Существует настраиваемый ориентированный граф заданий импорта для нескольких сущностей, некоторые из которых зависят от правильного импортапредыдущий тип объекта. (например, Отдел, затем Сотрудник, затем Ролевые назначения ...)
- В связи с предстоящей реализацией мы хотели бы получить
- мониторинг и управление (запуск, прерывание, пауза, возобновление)
- перезапускаемость
- простая реконфигурируемость последовательности в производстве (возможно, с помощью графического интерфейса пользователя или внешнего редактора)
- возможно, некоторые отчеты и статистика.
Как я понимаю, этого можно достичь с помощью сервера Spring Cloud Data Flow (SCDF) и некоторой реализации / комбинации задач / пакетов.
Поправьте меня, если я ошибаюсь, но одна работа Spring Batch с ее жестко запрограммированным потоком кажется мне не очень подходящей. Или существует простой способ редактирования и повторного развертывания Spring Batch с измененным потоком в процессе производства? Я ничего не смог найти, даже простой в использовании редактор для XML-представления партии.