Существует ли аналог left join в redis?

Существует ли механизм в redis, аналог left join mysql?

Попробую объяснить что требуется:

Есть 2 набора
Первый набор имеет предметы: пиво, мороженное, шоколад
Второй набор имеет дествия: саша пил пиво, саша ел мороженное.

Цель, когда саша к нам обратился, сказать ему что ты уже пил пиво и ел мороженное, но не ел шоколад,. И дать ему шоколадку.
Само собой у нас тысячи предметов, и сотни тысяч действий людей типа саши.
  • Вопрос задан
  • 177 просмотров
Пригласить эксперта
Ответы на вопрос 3
vabka
@vabka
Токсичный шарпист
redis - это не реляционная база. => Никаких джоинов нет.
Но ты вполне можешь сам сделать энное количество запросов, если это очень надо.
Но лучше переработать схему данных, чтобы в этом не было нужды.

Если дашь пример случая, где тебе понадобился джоин - дам вариант, как от него можно избавиться
Ответ написан
@deliro
Как сказали уже, джойнов нет и не будет. Но во-первых есть пайплайны, которыми можно сильно снизить издержки на RTT, во-вторых есть lua scripting, так что можно вызвать одну функцию на стороне клиента, "сджойнить" через луа на сервере редиса и отдать ответ какой ты хочешь

Но вообще звучит как Проблема XY. Либо редис там не нужен вовсе
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
это называется аггрегирующие функции
https://redis.io/docs/interact/search-and-query/ad...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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