Существуют ли какие-либо обходные пути для выполнения запроса на соединение с базой данных документов NoSQL?
Пример: нам нужно выбрать статьи за последний месяц пользователями с рейтингом более тысячи.Решение SQL -
SELECT a.* FROM Articles as a
INNER JOIN Users as u ON a.UserId = u.Id
WHERE a.Date > (Now - Month) AND u.Rating > 1000
Я могу представить несколько решений NoSQL.Во-первых, решение для двух запросов:
- Извлечение пользователей с рейтингом более 1000
- Извлечение статей за последний месяц для этих пользователей
Мне не нравитсятак как мне нужно сделать два запроса, и мне нужно получить всех пользователей с рейтингом> 1000 (что если у меня 1кк пользователей?)
Другое решение NoSQL, которое приходит мне в голову, - это денормализация.Но я не большой поклонник этого.Я был бы не против помещения коллекции комментариев в сущность поста (поскольку комментарии принадлежат посту), но я не люблю помещать пользователя в статью или статьи внутри пользователя.
Существуют ли другие решения?