У меня есть приложение, которое хранит изолированные (и защищенные) пользовательские данные в отдельных схемах MySQL (или базах данных) с идентичной структурой таблиц (3 таблицы InnoDB), по одной для каждой учетной записи. Мы используем Amazon RDS для хранения данных, и в настоящее время существует около 30 тыс. Схем на экземпляр RDS. Мой вопрос о том, как оптимизировать настройки MySQL (или с точки зрения RDS, настройки группы параметров) для большого количества схем.
Я знаю, что существует рефлекс, осуждающий практику наличия тысяч идентичных схем, предлагая вместо этого единую схему с чем-то вроде индексированного столбца "account_id". Обычно приводимый аргумент состоит в том, что штраф за хождение по осколку или изменение схемы перевешивает выгоды. В нашем случае нам необходимо хранить данные изолированными, и между различными учетными записями никогда не будет взаимодействия.
Какими способами можно добиться максимальной производительности в такой ситуации?