sql >> Databasteknik >  >> NoSQL >> Redis

Redis datastrukturdesign för sortering av tidsbaserade värden

Använd redis sorterade uppsättningar.

Sorterade uppsättningar lagrar data baserat på "poäng", så i ditt fall, använd bara en tidsstämpel i millis; data kommer att sorteras automatiskt, så att du kan hämta historiska objekt med start-/slutdatumintervall, här är ett exempel...

Lägg till objekt i en sorterad uppsättning...

zadd historical <timestamp> <dataValue>

..lägg till några exempeldata..

 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

..hämta en delmängd av objekt med start-/slutintervall...

 zrangebyscore historical 2 5

..returerar...

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

Så, i ditt fall, om du vill hämta alla historiska föremål för den sista dagen, gör bara detta...

zrangebyscore historical <currentTimeInMillis - 86400000> <currentTimeInMillis> 



  1. MongoDB varva ner flera arrayer

  2. Huvudsakliga skillnader/funktioner bland de mest kända NoSQL-systemen

  3. socket.io redis och minnesläcka

  4. MongoDB $toUpper