Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Casos de uso para recursos de pontuação e classificação do Redis para conjuntos


ZSET s são ótimos para seleções ou intervalos baseados em pontuações, mas as pontuações podem ser qualquer valor numérico, como um carimbo de data/hora.

Armazenamos os preços diários das ações para todas as ações dos EUA em redis. Aqui está um exemplo para o 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

A score os valores nesse caso normalmente seriam timestamps longos, com isso de lado, se quisermos preços diários para os últimos 3 dias, simplesmente convertemos duas datas em timestamps e extraímos de redis usando o intervalo de timestamp 1 3 ...
zrangebyscore stocks:ebay 1 3

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

A consulta é muito rápido e funciona bem para as nossas necessidades.

Espero que ajude!