Так, похоже, у каждого пользователя просто есть своя схема?Часто большие, большие наборы данных разделяются близко к этому (чаще всего клиент во многих бизнес-сценариях).Это часто преждевременная оптимизация, потому что она вносит дополнительную сложность в ваше приложение, и одна таблица с пользовательским столбцом будет масштабироваться до разумного количества строк.
Однако то, действительно ли вы достигнете какой-либо производительности от объединения в единую схему, действительно зависит от того, выполняете ли вы много межпользовательских запросов (другими словами, запросы, которые должны пересекать схемы / таблицы).) и являются ли данные в каждом наборе таблиц эксклюзивными для этого пользователя.Если вы реплицируете данные из таблицы другого пользователя в другую, то вам необходимо как минимум преобразовать эти таблицы в общую схему.
Лично я стараюсь избегать подхода к схеме в обычных условиях (из-за дополнительных затрат на обслуживание и сложности приложения), но он имеет свое место.И вряд ли я бы назвал это «кошмаром», если я не понимаю что-то правильно.