Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Erstellen eines neuen Satzes aus einem Bereich eines sortierten Satzes in Redis

Das ist eine Frage mit vielen möglichen Antworten. Hier sind meine zwei besten:

  1. Nutzen Sie die Leistungsfähigkeit von Lua, um das Verschieben von Daten zum Client zu vermeiden und die gesamte Arbeit serverseitig zu erledigen. Auf diese Weise können Sie das Fehlen von RANGESTORE umgehen.

  2. Pflegen Sie einen sortierten Satz, in dem die Bewertungen aus beiden Attributen bestehen, indem Sie Bit-Interleaving verwenden. Im Redis-Vers gibt es ein Experiment von Antirez namens Redimension, das genau das tut. Die Links sind https://www.reddit.com/r/redis/comments/3qjlkk/redimension_ruby_library_implementing/ und mein Port des Obigen zu Redis lua https://www.reddit.com/r/redis/comments/3s0h73/ luaredimension_redis_multidimensional_query/. Mehr über den Ansatz erfahren Sie unter Mehrdimensionale Indizes.