LINUX.ORG.RU

СУБД с multi-master репликацией и SQL?

 , ,


0

2

Нужно держать синхронизированными два сервера. По хорошему каждый из них можно сделать master-slave друг к другу, т.к. у каждого своя зона «ответственности» (у каждого группа таблиц, которую изменяет только один сервер).

Сейчас у меня Postgres, но как я понимаю из коробки мульти-мастера нет, а в остальном проприетарщина или костыли? Что ему можно взять на замену? Или может настроить master-slave репликацию разделив таблицы по разным БД?

★★★★★

MySQL/MariaDB + Galera, или Percona XtraDB Cluster (что по сути то же самое).

Кстати, интересно было бы послушать про другие альтернативы, ибо у этого варианта есть некоторые нюансы.

aix27249
()

у каждого группа таблиц, которую изменяет только один сервер

Это не мультимастер. Мультимастер — это редактирование одной строки на N серверах с разрешением конфликтов.

А то что ты описал — делается штатными функциями логической репликации.

anonymous
()
Ответ на: комментарий от anonymous

Понятно, что не мультимастер, но мало ли что понадобится в будущем.

foror ★★★★★
() автор топика

В целом, я бы попробовал Cockroachdb, но мне еще нужно это всё под офтопиком пускать… Так что буду на постгресе возводить master-slave по официальной документации. Подниму два инстанса под каждую БД, на каждом сервере и пусть они синхронятся. А там может на линукс ПО переделаю.

foror ★★★★★
() автор топика

Сейчас у меня Postgres, но как я понимаю из коробки мульти-мастера нет, а в остальном проприетарщина или костыли? Что ему можно взять на замену? Или может настроить master-slave репликацию разделив таблицы по разным БД?

Второй раунд мультимастеров на постгресе. Нынче я намного подготовленнее.

В рассылке постгреса на этот вопрос отвечают довольно прямо: «нахера вам мультимастер? вот просто объясните, зачем? чего вы хотите эти добиться? вы не получите выше производительности, вы не получите выше отказоустойчивости» — вольный пересказ.

Синхронная репликация на постгресе есть. Отказоустойчивость консенсуса системы из двух реплик с наблюдателем равна отказоустойчивости трех реплик в пределах погрешности (наблюдатель при отказе решает, какая из БД более актуальна). Если тебе нужна производительность, то нужно делать асинхронную репликацию, как это делает Galera Cluster (да-да, у них асинхронная репликация).

byko3y ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.