У меня есть веб-приложение, над которым я сейчас работаю, которое использует базу данных MySQL для серверной части, и мне нужно знать, что лучше для моей ситуации, прежде чем продолжить.
Проще говоря, в этом приложении пользователи смогут создавать свои собственные формы с любыми числовыми полями (они решают), и прямо сейчас у меня все это хранится в паре таблиц, связанных внешними ключами. Мой друг предлагает, чтобы все было «просто/быстро», я должен преобразовать форму каждого пользователя в плоскую таблицу, чтобы запрос данных от них оставался быстрым (в случае большого роста).
Должен ли я поддерживать нормализацию базы данных, объединяя все в реляционные таблицы с внешними ключами (индексами и т. д.), или мне следует создавать плоские таблицы для каждой новой формы, которую создает пользователь?
Очевидно, что одним из положительных моментов создания плоских таблиц является разделение данных (безопасность) и снижение скорости запросов. А если серьезно, какую выгоду я получу от этого? Я на самом деле не хочу 10000 таблиц и постоянно отбрасывать, изменять и добавлять, но если это будет лучше, чем я это сделаю... Мне просто нужен некоторый вклад.
Спасибо