Как разместить большую MySQL-базу на нескольких серверах и как при этом будут работать индексы?
Здравствуйте.
Планируется, что у проекта будет база данных на несколько терабайт. Как можно разместить её на нескольких серверах, как при этом будут работать индексы и какие параметры конфигурации в области потребления памяти наиболее оптимальны?
Благодарю за внимание.
Бить данные на части и раскладывать по серверам. Называется горизонтальное масштабирование. Для выбранной базы нужно писать собственное решение на уровне приложения. Задача нетривиальная. Для решения этой проблемы существуют распределенные nosql базы данных.
Не факт что нужен кластер. Зависит от профиля работы с СУБД. БД в основном запросы на чтение или запись?
У MySQL есть различные движки хранилищ и они подходят под разные профили работы. Нужно подбирать под нужды. Есть множество инструментов для профилирования и подгонки нужно применять по ситуации. Есть ещё Percona Server for MySQL.
Подгонять настройки MySQL нужно исходя из нагрузки и возможностей железа.