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

Anwendungsfälle für die Score- und Ranking-Funktionen von Redis für Sets

ZSET s eignen sich hervorragend für Auswahlen oder Bereiche basierend auf Punktzahlen, aber Punktzahlen können ein beliebiger numerischer Wert sein, z. B. ein Zeitstempel.

Wir speichern tägliche Aktienkurse für alle US-Aktien in redis. Hier ist ein Beispiel für ebay...

ZADD key score member [score member ...] 
...
ZADD stocks:ebay 1 30.39 2 32.70 3 31.25 4 31.75 5 29.12 6 29.87 7 29.93

Die score Werte wären in diesem Fall normalerweise lange Zeitstempel, abgesehen davon, wenn wir Tagespreise für die letzten 3 Tage wollen, konvertieren wir einfach zwei Daten in Zeitstempel und ziehen sie aus Redis unter Verwendung des Zeitstempelbereichs 1 3 ...

zrangebyscore stocks:ebay 1 3

1) "30.39"
2) "32.70"
3) "31.25"

Die Abfrage ist sehr schnell und funktioniert gut für unsere Bedürfnisse.

Hoffe es hilft!