MySQL кластерный вопрос
- Я думаю об использовании кластера MySQL, но мне любопытно, поддерживает ли он большие базы данных - около 50-60 ГБ или какой предел (в основном хранятся учетные записи Radius Telco).
- Какой будет архитектура (количество оперативной памяти и серверов)?
Спасибо.
2 ответа
Раньше ваша база данных должна была помещаться в памяти, чтобы использовать кластер MySQL. Я считаю, что теперь ваши индексы должны умещаться в памяти, но данные могут быть связаны с диском. Если у вас достаточно памяти на серверах (64 ГБ вполне возможно), значит, все готово.
Кластер MySQL - это своего рода ниша, и я думаю, что в большинстве случаев существуют лучшие решения проблем. Если вы дадите мне больше подробностей, я отвечу тем же.
ответ на первый комментарий Кластер - нишевая вещь из-за этих ограничений памяти. Часто в случаях, когда для чего-то большого требуется избыточность, скорость не нужна. Требования к оборудованию кластера значительно превышают требования к обработке 5500 вставок строк RADIUS в день. Я хотел бы предложить, чтобы вы использовали осколок вашей установки. Используйте кластер для текущих записей, а затем скопируйте их на обычный сервер с обычным временем резервного копирования и автономного режима / обслуживания для обработки исторических данных. Это обеспечит вам стабильность кластера, гарантируя, что вы не потеряете данные и не будете страдать от простоев.
Один сервер MySQL может обрабатывать 50-60 ГБ данных. Это действительно зависит от настроек вашей базы данных и сложности ваших запросов.
Я имею в виду, что вы можете заставить MySQL летать, написав приложение, которое не присоединяется... или вы можете заставить его сканировать, выполняя очень сложные запросы.
Я бы пошел с кластером, если вы хотите легкого резервирования в первую очередь.
Редактировать для кластера оперативной математики
Используйте следующую формулу, чтобы определить объем оперативной памяти, необходимой для каждого узла хранения:
(Size of database * NumberofReplicas * 1.1) / Number of storage nodes
NumberofReplicas по умолчанию установлено в два. Вы можете изменить его в config.ini, если хотите. Так, например, чтобы запустить базу данных объемом 4 ГБ на двух серверах с NumbeOfReplicas, установленным на два, вам потребуется 4,4 ГБ ОЗУ на каждом узле хранения. Для узлов SQL и узлов управления вам вообще не нужно много оперативной памяти. Чтобы запустить базу данных объемом 4 ГБ на 4 серверах с числом NumberOfReplicas, равным двум, вам потребуется 2,2 ГБ на узел.