Каков наилучший подход к хранению рейтингов продуктов в базе данных? Я имею в виду следующие два (упрощенные и предполагающие MySQL db) сценарии:
Создайте два столбца в таблице продуктов, чтобы сохранить количество и сумму всех голосов соответственно. Используйте столбцы, чтобы получить среднее значение во время выполнения или с помощью запроса.
Этот подход означает, что мне нужно только получить доступ к одной таблице, упрощая вещи.
Нормализовать данные, создав дополнительную таблицу для хранения оценок.
Это изолирует данные рейтингов в отдельной таблице, оставляя таблицу продуктов для предоставления данных о доступных продуктах. Хотя для этого потребуется соединение или отдельный запрос для оценок.
Какой подход лучше, нормирован или денормализован?