@MVP_Master

Где лучше хранить частоизменяемое поле? в общей таблице товара или отдельно?

В таблице товаров достаточно много полей. Меняются эти поля обычно оператором и не так часто.
Сейчас нужно добавить поле "количество просмотров", которое будет меняться при каждом просмотре товара.
Стоит ли добавить это поле прям в таблицу товараа или лучше создать связаную таблицу с отношением
один к одному? и менять именно в той таблице? Как будет правильнее с точки зрения проектирования?
  • Вопрос задан
  • 29 просмотров
Пригласить эксперта
Ответы на вопрос 3
firedragon
@firedragon
Senior .NET developer
Я бы хранил в кэше и скидывал бы в базу только при обновлении. Ну а кэш выберите сами либо просто структура у вас, либо редис либо что то еще
Ответ написан
ИМХО количество просмотров к сущности товар, не имеет никакого отношения.
Это скорее мониторинг.
Так что в имеет смысл вообще вынести эту логику за БД.
В какое ни-будь key-value хранилищу.
Ответ написан
AndyKorg
@AndyKorg
Кнопконажиматель и припоерасплавлятель
Отделить сущность товар, от сущности "история просмотров" самое лучшее. В сущности "история просмотров" помимо индекса товара хранить дату просмотра. Почти 100% менеджеры захотят отлеживать всякие всплески просмотров и прочую аналитику. Для начала можно все пихать в одну таблицу, по мере роста придется отделить архивные логи (например за год) от оперативных.
Ответ написан
Ваш ответ на вопрос

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

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