Наша организация имеет очень большую базу данных, которая реплицируется на отдельные глобальные серверы.
В нашей базе данных некоторые таблицы содержат данные, эксклюзивные для определенного региона, таким образом предоставляя привилегии эксклюзивной информации пользователям, которые находятся в этих регионах.
пример (
transactions_australia,
transactions_dubai
)
В отличие от региональных таблиц, у нас есть глобальные таблицы, которые содержат информацию из всех регионов мира.
пример (
person, address, contacts
)
Проблема, с которой мы сталкиваемся, заключается в том, что приИз привилегий пользователей на эту информацию мы представляем угрозу безопасности, которую пытаемся преодолеть.
Главный программист предлагает дублировать данные, которые находятся в глобальных таблицах, с помощью запросов, которые могут извлекать только данные этих конкретных регионов в отдельную базу данных иготовьте это дублирование каждый раз, когда нам нужно запускать отчеты или извлекать данные.
Я не полностью согласен с таким подходом, как временем для дублирования записей 11+ таблиц (которые содержат сотни тысяч)записей) займет много времени, а также вопрос целостности данных и синхронизации является рискованным.
Я ищу альтернативу этому подходу дублирования.
Есть лиспособ настройки условной репликации на определенные серверы?
Например.
Если запись о человеке обновляется и этот человек принадлежит к региону Австралии, то запись будет обновляться на главном сервере, а репликация будет выполняться только на соответствующем сервере.
Или есть ли альтернативы этому?
Я кратко рассмотрел использование views однако я не думаю, что они обеспечат такой уровень экстраполяции из основногонабор данных мы после.