Можно ли иметь дополнительные таблицы для записи для подчиненного сервера postgresql (реплицируется Skytools / londiste) - PullRequest
1 голос
/ 24 мая 2011

У меня есть основная база данных postgres M с таблицами M.A1 и т. Д. У меня есть подчиненная база данных S с таблицами M.A1 и т. Д., Заполненная и поддерживаемая Skytools / londiste.Все отлично работает.

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

Я хотел бы добавить несколько вспомогательных таблиц для чтения / записи в S: S.B1.(Я хочу присоединиться к S.A1 и не добавлять дополнительную нагрузку на M, поэтому я хочу установить B1 на S. Можно ли сохранить эту настройку?

Если я создаюновая таблица S.B1 для ведомого Skytools / Londiste, не помешает ли это репликации таблицы A1?

Изменить, чтобы добавить продолжение:

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

Меня не очень беспокоит задержка репликации или простои на моем ведомом аналитике (но мне бы понадобился бы путь к в конце концов восстановление без простоя на ведущем устройстве ).

Я очень обеспокоен ошибкой ведомого устройства, приводящей к тому, что ведущее устройство увеличивает свою очередь репликации на неопределенное время и потребляющей HD / RAM / ресурсы на главном устройстве.я бы смягчил это? Есть ли способ установить допуск, чтобы мастер просто разорвал соединение подчиненного, если ведомое устройство слишком сильно отстает?

Часть 2

Если я настрою этоRking, я хочу где-нибудь иметь подчиненную резервную копию S.B1, в случае сбоя S.

Можно ли установить вторичного ведомого T и настроить Skytools / Londiste для репликации S.B1 в T.B1, в то время как M.A1 также реплицирует в S.A1?

О каких предостережениях следует беспокоиться?

Большое спасибо за советы и советы.

Ответы [ 2 ]

3 голосов
/ 24 мая 2011

Во-первых, я бы действительно посоветовал вам потратить время на понимание того, как работают skytools pgq и londiste.Это не очень сложно, но документация довольно скудная.

Для вашего первого вопроса - да, у вас могут быть другие таблицы на ведомом устройстве, которые не реплицируются с мастера.

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

Вы не можете использовать skytools / Londiste для каскадной репликации, например master -> slave1 -> slave2, поэтому не очевидно, чтоВы получите выгоду от частичной репликации данных от одного ведомого к другому.

Было бы проще иметь все таблицы на главном сервере, а затем только одну очередь для репликации на ведомое устройство, а затем для обеспечения устойчивости иметьтеплый режим ожидания мастера см. объяснение 8.4 , из которого вы можете выполнить восстановление на определенный момент времени, если необходимо, а затем восстановить подчиненное устройство из последовательного мастера.В Skytools есть пакеты, которые помогут вам настроить теплый резерв / питр.

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

Если вы используете Postgres 9, существует потоковая репликация, которая также может служить, но я не использовал это.

0 голосов
/ 05 ноября 2013

Просто, чтобы расширить тему, если кто-то достигнет ее, у вас может быть несколько очередей, как предложил Гэвин выше, но также вы можете иметь каскадную репликацию начиная с версии 3 Skytools (март 2012 г.).И действительно, вы можете реплицировать любое подмножество таблиц, и вы можете даже переименовать таблицы в месте назначения, если это необходимо.

...