Размер сетки в весенней партии - PullRequest
5 голосов
/ 13 октября 2011

У меня есть пакетное задание, которое читает данные из больших файлов, обрабатывает их и вставляет в БД.

Я использую функции разбиения Spring с помощью обработчика разделов по умолчанию.здесь значение gridSize?Я настроил таким образом, чтобы он равнялся параллелизму в taskExecutor.

Ответы [ 3 ]

5 голосов
/ 14 октября 2011

gridSize указывает число data blocks, которое будет создано для обработки (обычно) тем же числом workers.Думайте об этом как о количестве отображенных блоков данных на карте / уменьшите.

Используя StepExecutionSplitter, учитывая данные, PartitionHandler "разбиения" / разбивает данные на gridSize частей,отправляет каждую часть независимому работнику => thread в вашем случае.

Например, у вас есть 10 строк в БД, которые необходимо обработать.Если вы установите gridSize равным 5 , и вы используете простую логику разбиения, вы получите 10/5 = 2 строки на поток => 5 потоковработает одновременно на 2 рядах.

2 голосов
/ 13 октября 2011

По API,

Передано в StepExecutionSplitter в обрабатывать (StepExecutionSplitter, StepExecution) метод, инструктируя его сколько экземпляров StepExecution требуется, в идеале. StepExecutionSplitter позволяет игнорировать размер сетки в случае перезапуска, поскольку разделы входных данных должны быть сохранены.

0 голосов
/ 02 декабря 2016
Размер сетки

- это не что иное, как набор задач (например, мешок с мешками), один шаг с разделением поднимает для обработки. После выполнения всего выполненного задания (мешок с мешками) он вернется к следующему набору заданий (мешок с мешками).

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