Назад | Перейти на главную страницу

Кластер MariaDB против кластера Percona для MySQL

Каковы преимущества и недостатки между ними? Мне удалось найти информацию только об этих двух реализациях без каких-либо подробностей о кластерах.

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

Является ли переход от кластера Percona к кластеру MariaDB лучшим выбором?

Обе платформы используют один и тот же механизм репликации: Галера. На странице по этой ссылке вы заметите, что есть изображения, показывающие как PXC, так и MariaDB Cluster.

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

В настоящее время репликация работает только с механизмом хранения InnoDB. Любые записи в таблицы других типов, включая системные (mysql. *), Не реплицируются. Однако операторы DDL реплицируются на уровне операторов, и изменения в таблицах mysql. * Будут реплицироваться таким образом. Таким образом, вы можете спокойно ввести: CREATE USER ..., но выдав: INSERT INTO mysql.user ..., не будет реплицироваться.

- http://www.percona.com/doc/percona-xtradb-cluster/limitation.html

В настоящее время MariaDB Galera Cluster поддерживает только механизм хранения InnoDB / XtraDB.

- https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/

И, конечно же, PXC использует XtraDB, замену InnoDB, совместимую с Percona (в названии которой присутствует "XtraDB"), и MariaDB также использует Percona XtraDB вместо Oracle InnoDB, хотя для совместимости в обеих системах механизм хранения по-прежнему называет себя InnoDB.

Поскольку две системы используют значительный объем кода и все они предназначены для замены друг друга, решение о том, какую платформу использовать, в значительной степени является вопросом мнения. Я лично предпочитаю поставщика "x", что может означать, что я лично рекомендую вам использовать MariaDB, а также может означать, что я лично рекомендую придерживаться PXC, но на самом деле мне не нужно на самом деле говорить вам о своих предпочтениях, поскольку это не имеет значения - он основан в основном на мнениях, впечатлениях, документах и ​​личностях, а не на каких-либо ценных доказательствах.

Лучшим решением для миграции MyISAM, вероятно, будет изменение файлов дампа на ENGINE=InnoDB (и любые другие необходимые изменения) или размещение их на автономном сервере, а затем преобразование и экспорт их как полностью InnoDB, прежде чем пытаться импортировать их в свой кластер.

Если проблема MyISAM является вашей единственной или даже основной проблемой, тогда MariaDB Cluster и PXC по сути идентичны в этом отношении - они не поддерживают ее по очень разумной причине - это невозможно.

Я работаю в Percona, поэтому я пристрастен. Я бы сказал, что хотя на первый взгляд они похожи на продукты, у PXC было гораздо больше релизов, мы делаем тонну больше контроля качества и делаем гораздо больше, чтобы внести свой вклад в Codership, чем Мария.

Тем не менее, поддержка MyISAM будет такой же, и я с сожалением должен сказать, что если MyISAM является для вас требованием к дизайну, вы, вероятно, не будете довольны каким-либо продуктом Galera. Galera просто никогда не будет по-настоящему поддерживать нетранзакционный движок, такой как MyISAM, как это делается с Innodb, и я согласен с Майклом, что миграция с MyISAM - ваш лучший выбор, если вы переходите на Galera.