Я новичок в Redis, и я ищу определенную помощь вокруг наборов. Чтобы дать некоторый опыт: я создаю веб-приложение, состоящее из большого количества карточных колод, каждый из которых имеет набор индивидуальных карт с уникальными идентификаторами. Я хочу, чтобы пользователи имели набор из 5 карт, нарисованных для них наугад из определенной колоды.
Мой план состоит в том, чтобы все идентификаторы карты данной колоды были сохранены как набор в Redis; то я хочу использовать функцию SPOP для рисования отдельных карт и удаления их из набора, чтобы они не были снова нарисованы в этой руке. Казалось бы, имеет смысл сделать это, скопировав "основной набор" колоды идентификаторов карт в новый временный набор, выполнив всплывающее копирование и затем удалив скопированный набор, когда закончите.
Но: я не могу найти какую-либо функцию Redis для команды set copy - ближайшая вещь, которую я вижу, - это также создать пустой набор, а затем "присоединиться" к пустым множеству и "главной копии" набора в новый (если временно) набор с SUNIONSTORE, но это кажется взломанным. Я полагаю, что альтернативой было бы скопировать установленные элементы в мой "язык хоста" (node.js), а затем вручную вставить элементы обратно в новый набор Redis, но это также кажется неуклюжим. Вероятно, есть лучший третий вариант, о котором я даже не думал.
Я делаю что-то не так: неужели я не получаю Redis, или набор команд все еще немного незрелый?