ZSET
s świetnie nadają się do selekcji lub zakresów opartych na wynikach, ale wyniki mogą być dowolną wartością liczbową, na przykład znacznikiem czasu.
Przechowujemy dzienne ceny akcji dla wszystkich akcji w USA w redis. Oto przykład dla serwisu 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
score
wartości w tym przypadku byłyby zwykle długimi znacznikami czasu, pomijając to, jeśli chcemy dziennych cen z ostatnich 3 dni, po prostu konwertujemy dwie daty na znaczniki czasu i pobieramy z redis, używając zakresu znaczników czasu 1 3
...
zrangebyscore stocks:ebay 1 3
1) "30.39"
2) "32.70"
3) "31.25"
Zapytanie jest bardzo szybko i działa dobrze dla naszych potrzeb.
Mam nadzieję, że to pomoże!