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

Кластер MySQL: 20 ТБ x 3 КБ таблиц

В течение следующих 2-3 лет мы будем увеличивать сбор данных для проекта. В результате объем данных вырастет в 10 раз. Наша текущая установка MySQL может не отставать от 2 ТБ данных, но для больших запросов есть изрядное количество IOWait.

Я изучаю переход на кластерное решение для распределения операций ввода-вывода, но мне интересно узнать о NDB и о том, что происходит с данными, к которым не так часто обращаются. Читая о кластере MySQL, у меня складывается впечатление, что он полагается на таблицы памяти для большей части данных. Что происходит с таблицами, к которым не часто обращаются (или вообще не обращаются)? А как работает бэкап? Могу ли я использовать MYSQLDUMP или есть лучшее решение?

NDB имеет некоторые ограничения для больших таблиц из-за его модели в памяти. Для вас это не имеет смысла.

Недавно мы протестировали Percona Cluster с очень многообещающими результатами. Он поддерживает репликацию мастер-мастер и полностью соответствует ACID InnoDB. Следует отметить, что скорость запросов ограничена самым медленным узлом в кластере, который во многих установках MySQL, которые являются ведущими / ведомыми, обычно имеют гораздо более быстрый ведущий узел.

Если вам нужен действительно быстрый доступ, вы также можете преобразовать действительно большие наборы данных в MongoDB или Cassandra. Оба они значительно быстрее, чем СУБД, такие как MySQL. Кластеризация в этих базах данных NoSQL является встроенной.