lightalex
@lightalex

Одна большая таблица или две маленьких?

Всем привет!
Проектирую базу данных
А конкретно таблицу пользователей сайта
Есть где-то десяток основных атрибутов + еще атрибутов 15 касающихся исключительно рассылки
Вопрос - есть ли какой-то смысл разбивать эту таблицу на две маленьких (одна таблица - основные атрибуты, вторая - исключительно рассылка)?
Основные атрибуты извлекаются при входе пользователя на сайт и иногда изменяются или запрашиваются другими клиентами (стандартная картина)
В то время как информация по рассылке извлекается исключительно "роботом"
Возможно две таблицы по отдельности будут быстрее работать в следствии того что извлекаемых данных будет меньше?
  • Вопрос задан
  • 186 просмотров
Решения вопроса 2
15 касающихся исключительно рассылки

Я бы сделал 2 что бы глаза не мозолило это

быстрее работать в следствии того что извлекаемых данных будет меньше

Так вы и так для сайта будете извлекать только одни данные а для рассылки другие, т.е. объём извлекаемых данных не меняется.

Но при большом количестве строк и индексов со временем может сильно замедлиться вставка из-за времени на перестроение индексов.
Ответ написан
Я бы не стал разбивать на 2 таблицы. Могу предположить, что взаимосвязь между таблицами будет через ID пользователя, а это как минимум дублирование информации (хоть размер ее и незначительный), но одно когда пользователей 100, а когда 1 млн.? И вдруг роботу понадобиться имя пользователя, то это уже 2 запроса в БД. Хотя все зависит от задач и требований.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@egormmm
Борітеся — поборете!
Есть такая штука, называется "нормализация".
Если для разных атрибутов вам придется копировать строку - то однозначно нужны разные таблицы.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы