Redis
 sql >> Base de données >  >> NoSQL >> Redis

Conception de la structure de données Redis pour le tri des valeurs temporelles

Utilisez des ensembles triés Redis.

Les ensembles triés stockent les données en fonction des "scores", donc dans votre cas, utilisez simplement un horodatage en millis ; les données seront triées automatiquement, vous permettant de récupérer des éléments historiques en utilisant des plages de dates de début/fin, voici un exemple...

Ajouter des éléments à un ensemble trié...

zadd historical <timestamp> <dataValue>

..ajoutez des exemples de données..

 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

..récupérer un sous-ensemble d'éléments en utilisant la plage de début/fin...

 zrangebyscore historical 2 5

..retourne...

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

Donc, dans votre cas, si vous souhaitez récupérer tous les éléments historiques du dernier jour, faites simplement ceci...

zrangebyscore historical <currentTimeInMillis - 86400000> <currentTimeInMillis>