MySQL условной репликации на основе записей - PullRequest
0 голосов
/ 18 октября 2010

Наша организация имеет очень большую базу данных, которая реплицируется на отдельные глобальные серверы.

В нашей базе данных некоторые таблицы содержат данные, эксклюзивные для определенного региона, таким образом предоставляя привилегии эксклюзивной информации пользователям, которые находятся в этих регионах.

пример (

transactions_australia, transactions_dubai

)

В отличие от региональных таблиц, у нас есть глобальные таблицы, которые содержат информацию из всех регионов мира.

пример (

person, address, contacts

)

Проблема, с которой мы сталкиваемся, заключается в том, что приИз привилегий пользователей на эту информацию мы представляем угрозу безопасности, которую пытаемся преодолеть.

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

Я не полностью согласен с таким подходом, как временем для дублирования записей 11+ таблиц (которые содержат сотни тысяч)записей) займет много времени, а также вопрос целостности данных и синхронизации является рискованным.

Я ищу альтернативу этому подходу дублирования.

Есть лиспособ настройки условной репликации на определенные серверы?

Например.

Если запись о человеке обновляется и этот человек принадлежит к региону Австралии, то запись будет обновляться на главном сервере, а репликация будет выполняться только на соответствующем сервере.

Или есть ли альтернативы этому?

Я кратко рассмотрел использование views однако я не думаю, что они обеспечат такой уровень экстраполяции из основногонабор данных мы после.

1 Ответ

0 голосов
/ 18 октября 2010

MySQL предлагает выборочную репликацию, но наименьший уровень выбора - таблица . Это связано с тем, что по большей части таблица почти всегда может оставаться в одиночестве с точки зрения чисто базы данных. Попытка ограничить репликацию отдельными строками может серьезно подорвать целостность данных и стать кошмаром для администрирования базы данных: MySQL потребуется больше информации об использовании таблиц, чем рассчитано.

В главе, посвященной репликации в документах, описываются системные настройки для управления репликацией отдельных таблиц или баз данных.

...