У меня проблемы с базой данных синхронизация между двумя разными базами данных (одна - Oracle, другая - Postgresql), эти две базы данных расположены в в двух разных местах (то есть два разных физических местоположения или географических местоположения), а средняя скорость интернета будет около 1 Мбит / с .
Вот проблема, скажем, у меня есть следующие таблицы:
tableORC внутри БД Oracle (эта таблица содержит буквально миллионы строк) и
tablePG внутри БД Postgresql (эта таблица содержит буквально сотни тысяч строк)
Эти две таблицы (внутри другой базы данных) будут иметь различную структуру столбцов , вотструктуры этих таблиц:
tableORC :
+-----------------+-------------+--+--+--+
| serial_26_chars | description | | | |
+-----------------+-------------+--+--+--+
| | | | | |
+-----------------+-------------+--+--+--+
tablePG :
+----+------+--+--+--+
| id | desc | | | |
+----+------+--+--+--+
| | | | | |
+----+------+--+--+--+
tableORC
будетвсегда получают time-series
изменения от многих приложений / API, т.е. почти каждую секундуЭто будет операция CRUD для tableORC
, моя цель состоит в том, чтобы tablePG
всегда синхронизироваться с tableORC
, то есть:
Если одна строка serial_26_chars
изначально присутствует, но затемполучил удален , затем id
с тем же значением с serial_26_chars
будет удален также из tablePG
.
Если description
в строке получил обновляется , затем desc
соответствующего id
будет обновляться с tablePG
тоже.
Если одна строка serial_26_chars
изначально была создана заново создана, затем id
с тем же значением, что и serial_26_chars
, будет вновь создан на tablePG
.
и учтите, что за одну секунду буквально тысячи операции CRUD на tableORC
, и я хочу, чтобы синхронизация с tablePG
происходила в считанные секунды через Интернет (другое расположение сервера).
Для вашей информации, tableORC
были размещены на сервер корпоративного уровня , в то время как tablePG
были размещены на обычном настольном ПК .
Так какрешить эту проблему?Можете ли вы предложить мне какой-нибудь метод решения этой проблемы?
Спасибо.