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

Redis-Datenstrukturdesign zum Sortieren zeitbasierter Werte

Redis-sortierte Sätze verwenden.

Sortierte Sätze speichern Daten basierend auf "Ergebnissen". Verwenden Sie in Ihrem Fall also einfach einen Zeitstempel in Millis; Die Daten werden automatisch sortiert, sodass Sie historische Elemente anhand von Start-/Enddatumsbereichen abrufen können. Hier ist ein Beispiel...

Elemente zu einem sortierten Satz hinzufügen...

zadd historical <timestamp> <dataValue>

..fügen Sie einige Beispieldaten hinzu..

 zadd historical 1 data1
 zadd historical 2 data2
 zadd historical 3 data3
 zadd historical 4 data4
 zadd historical 5 data5
 zadd historical 6 data6
 zadd historical 7 data7

..eine Teilmenge von Elementen abrufen, indem der Start-/Endbereich verwendet wird...

 zrangebyscore historical 2 5

..gibt zurück...

1) "data2"
2) "data3"
3) "data4"
4) "data5"

Wenn Sie also in Ihrem Fall alle historischen Elemente für den letzten Tag abrufen möchten, tun Sie dies einfach ...

zrangebyscore historical <currentTimeInMillis - 86400000> <currentTimeInMillis>