товаров, для каждого товара отображается рейтинг основанный на отзывах. На данный момент есть 2 варианта реализации:
1) При выборке товаров делать кросстабличный запрос, в котором будет расчитываться avg() от кол-ва звездочек в отзывах. По производительности этот вариант даже без бенчмарков выглядит как то не очень.
2) Хранить в таблице товаров поле рейтинга, которое будет пересчитываться при добавлении (удалении, изменении) отзывов. Небольшая денормализация, но производительность будет явно выше.
Возможно есть какие то другие варианты, которые сейчас применяются. Что то можете порекомендовать?
https://habr.com/ru/company/darudar/blog/143188/
Обсуждают сегодня