Пакетная обработка нескольких шагов против одного шага - PullRequest
1 голос
/ 15 апреля 2019

Я создаю приложение Spring Batch.Предположим, что у меня есть Задание , которое выполняется, например:

Разделить аудиофайл Выполнить преобразование текста в текст

Предположим, у меня есть TaskExecutor, позволяющий параллельно выполнять Chunk -ориентированные шаги.

Есть ли какие-либо преимуществаиспользовать 2 шага вместо того, чтобы объединить все эти операции в одну?

Я сомневаюсь, что использование 2 шагов заставляет «уже готовые файлы» ждать, пока весь пулзавершено, вызывает неэффективность.

Заранее спасибо

1 Ответ

0 голосов
/ 15 апреля 2019

Я бы порекомендовал сделать это в два этапа.Основная причина - обработка ошибок.Я бы предположил, что после того, как вы разделите файл, вам не нужно будет делать это снова, если есть ошибка при обработке речи в текст.Если это так, разделив обработку на два этапа, функция разделения не должна быть перезапущена.Кроме того, это означает, что обработка, ориентированная на фрагменты, может быть более динамичной, поскольку фрагменты, которые были успешно обработаны, не требуют повторного выполнения.Да, вы могли бы самостоятельно кодировать эту функциональность, чтобы вести себя таким образом, но Spring Batch предоставляет функциональность «из коробки» ... почему бы не воспользоваться этой возможностью?

...