Связь Oracle с SQL-сервером - JDBC против ODBC - PullRequest
3 голосов
/ 16 мая 2011

Просто хочу узнать мнение людей относительно связи между базой данных Oracle 10G, работающей в Unix, и базой данных SQL Server, работающей в Windows.

У меня есть требование написать пакетное задание, которое будет считывать данные из базы данных Oracle и заполнять данные в таблице на SQL Server.

Oracle поддерживает функции «гетерогенных служб», в которых я могу использовать драйвер ODBC для создания связи базы данных из базы данных Oracle с базой данных SQL Server.

Другой вариант, который у меня есть, - это использование процесса Java, который использует JDBC для подключения к SQL Server и заполнения данных с использованием соединения JDBC без ссылок на базы данных.

Любопытно узнать преимущества и недостатки обоих.

Спасибо

1 Ответ

5 голосов
/ 16 мая 2011

С точки зрения производительности почти наверняка эффективнее использовать ссылку на базу данных.В противном случае вашему Java-процессу придется извлечь данные по сети из базы данных Oracle, а затем записать их по сети в базу данных SQL Server.Прямое соединение потребует только одного сетевого обхода.

С точки зрения обслуживания, ссылка на базу данных, как правило, приводит к существенно меньшему количеству написанного кода.Писать

INSERT INTO destinationTable@sqlServer( <<column list>> )
  SELECT <<column list>>
    FROM sourceOracleTable

намного проще, чем делать то же самое в Java, даже если весь JDBC выполняется слоем ORM.

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