Как сравнить две базы данных?

По работе появилась потребность в полном сравнении двух баз данных.
У нас есть озеро данных на HIVE, куда мы реплицируем (загружаем) данные для дальнейшей работы с ними DS, DM, BI и тд. как правило в 99% случаев это полная загрузка таблицы из других баз данных.

Мой вопрос заключается в том, что я никак не могу разобраться и в принципе понять, как можно и возможно ли, составлять межбазовые запросы.

я имею таблицу в HIVE назовем её TABLE-1 и таблицу в Oracle, назовем её TABLE-2, каким образом я могу сджойнить и вывести результаты несовпадения между этими БД. На данный момент я имею менеджер БД DBeaver, может мне нужно установить что-то ещё, пока из идей, получать данные на питоне и дальше с ними работать, но это займёт очень много времени, так как таблицы с большим количеством данных (100+млн строк) и на питоне это всё выполняется очень долго. Сравнивать необходимо именно содержание самих таблиц, а не метаданные.
  • Вопрос задан
  • 1497 просмотров
Решения вопроса 1
ae_ph
@ae_ph
I'm a owl )
Можно выполнять запросы между базами данных для объединения таблиц из разных баз данных, таких как HIVE и Oracle.
Один из способов сделать это — использовать инструмент под названием Apache Drill, который позволяет запрашивать данные из нескольких источников данных, включая HIVE и Oracle.
Вы можете использовать оператор SQL JOIN в тренировке, чтобы соединить таблицы из разных баз данных.

Другой способ — использовать язык программирования, такой как Python, и библиотеки, такие как PyHive или cx_Oracle, для подключения к обеим базам данных и выполнения объединения и сравнения в коде.
Этот подход может занять больше времени для больших таблиц с миллионами строк.

Вы также можете использовать сторонние инструменты интеграции данных, такие как Talend, Informatica и DataStage, для объединения и сравнения двух баз данных.
Лучше всего проверить производительность каждого подхода и выбрать тот, который лучше всего подходит для вашего случая использования.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы