Spring Batch для переноса базы данных и параллелизма - PullRequest
0 голосов
/ 13 мая 2019

Я пишу пакетное приложение Spring для периодического копирования данных из таблицы в одной базе данных (IBM DB2) в таблицу в другой базе данных (SQL Server).Чтение документации по пакетной обработке Spring дает мне эти указатели на параллелизм -

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

2) База данных сама по себе может потребовать явной блокировки для чтения и / или записи.Кроме того, приложения могут использовать неявную оптимистическую (на основе отметки времени последнего обновления) или пессимистическую блокировку (на основе столбца явной блокировки в таблице).

В настоящее время у меня нет информации о стратегии блокировки, используемойонлайн-приложения, которые пишут (или читают) из любой базы данных, но планируют выяснить.

Мои вопросы -

1) Должен ли я даже беспокоиться о блокировке / параллелизме по отношению к источникубаза данных?- так как я только читаю из него.Каковы могут быть последствия отказа от блокировки при чтении из источника?

2) Когда известна стратегия блокировки онлайн-приложений, какой должна быть соответствующая стратегия автономного приложения?Например, если онлайн-приложение следует стандартному уровню изоляции стабильности курсора DB2, какой стратегии следует придерживаться пакетному приложению?

3) Как работа над несколькими строками, а не над одной, повлияет на проект?

4) Какие вопросы я должен задать дизайнерам онлайн-приложений?

...