Подходит ли Spring / Hibernate для случая использования, который требует гетерогенных соединений БД? - PullRequest
5 голосов
/ 25 мая 2011

У меня есть база данных Oracle, которая раз в неделю выполняет задание PL / SQl для копирования данных из таблицы в базе данных Oracle в другую базу данных Oracle, используя ссылки на базу данных Oracle.Обе системы работают на Unix / Solaris.Задание запланировано и выполнено с помощью Unix Cron.

Удаленный компьютер теперь мигрирует с UNIX на платформу Windows с базой данных MSQL Server.Я искал возможность использования ссылок базы данных Oracle для подключения из UNIX к базе данных MSSQL Server, которая будет работать на платформе Windows.Это возможно, но мне кажется, что есть много поворотов, чтобы заставить его работать, и не так много информации о том, как его реализовать.

Другое решение, о котором я думаю, - реализовать этот процесс как процесс Java-демона, который будет запускаться каждую неделю.Все, что он сделает, это подключится к базе данных Oracle, чтобы прочитать данные из некоторых таблиц, подключиться к базе данных MSSQL Server и выполнить несколько команд вставки.Я думаю, что мне понадобятся два вида драйверов для этого - то есть jdbc для Oracle и jdbc для MSSQL Server.

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

Подходит ли Hibernate для управления несколькими подключениями к базам данных или это избыточно?

Не стесняйтесь также предложить лучшее решение:)

Спасибо

Ответы [ 2 ]

2 голосов
/ 25 мая 2011

Spring имеет расширенную поддержку для планирования задач .

Выполнение запросов к нескольким базам данных через разные драйверы является основной функцией JDBC; Spring на самом деле не имеет значения - если только вы не хотите, чтобы это произошло в одной (распределенной) транзакции. Spring поддерживает через JTA и XA .

2 голосов
/ 25 мая 2011

Это звучит как идеальное приложение для Spring Batch

Вы должны проверить эти страницы, чтобы увидеть, что это такое:

Spring Batch с радостью примет разные источники данных с разными драйверами, но вам, вероятно, придется предоставить некоторые RowMapper объекты для создания промежуточныхОбъекты.

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