Redis - Set ordinati
I set ordinati Redis sono simili ai set Redis con la caratteristica unica dei valori memorizzati in un set. La differenza è che ogni membro di un set ordinato è associato a un punteggio, che viene utilizzato per prendere il set ordinato ordinato, dal punteggio più piccolo a quello più grande.
In Redis set ordinato, aggiungi, rimuovi e verifica l'esistenza di membri in O (1) (tempo costante indipendentemente dal numero di elementi contenuti all'interno del set). La lunghezza massima di un elenco è 2 32 - 1 elementi (4294967295, più di 4 miliardi di elementi per set).
Esempio
redis 127.0.0.1:6379> ZADD tutorials 1 redis
(integer) 1
redis 127.0.0.1:6379> ZADD tutorials 2 mongodb
(integer) 1
redis 127.0.0.1:6379> ZADD tutorials 3 mysql
(integer) 1
redis 127.0.0.1:6379> ZADD tutorials 3 mysql
(integer) 0
redis 127.0.0.1:6379> ZADD tutorials 4 mysql
(integer) 0
redis 127.0.0.1:6379> ZRANGE tutorials 0 10 WITHSCORES
1) "redis"
2) "1"
3) "mongodb"
4) "2"
5) "mysql"
6) "4"
Nell'esempio precedente, tre valori vengono inseriti con il relativo punteggio nel set ordinato di Redis denominato "tutorial" dal comando ZADD.
Comandi di insiemi ordinati Redis
La tabella seguente elenca alcuni comandi di base relativi agli insiemi ordinati.
Suor n | Comando e descrizione |
---|---|
1 | Punteggio chiave ZADD1 membro1 [punteggio2 membro2]
Aggiunge uno o più membri a un insieme ordinato o ne aggiorna il punteggio, se già esistente |
2 | Tasto ZCARD
Ottiene il numero di membri in un set ordinato |
3 | ZCOUNT chiave min max
Conta i membri in un insieme ordinato con punteggi entro i valori indicati |
4 | Membro di incremento chiave ZINCRBY
Incrementa il punteggio di un membro in un insieme ordinato |
5 | Tasto numerico destinazione ZINTERSTORE [tasto ...]
Interseca più set ordinati e memorizza il set ordinato risultante in una nuova chiave |
6 | ZLEXCOUNT chiave min max
Conta il numero di membri in un insieme ordinato tra un dato intervallo lessicografico |
7 | ZRANGE key start stop [WITHSCORES]
Restituisce un intervallo di membri in un insieme ordinato, in base all'indice |
8 | Chiave ZRANGEBYLEX min max [LIMIT offset count]
Restituisce un intervallo di membri in un insieme ordinato, per intervallo lessicografico |
9 | Chiave ZRANGEBYSCORE min max [WITHSCORES] [LIMIT]
Restituisce un intervallo di membri in un insieme ordinato, in base al punteggio |
10 | Membro chiave di ZRANK
Determina l'indice di un membro in un insieme ordinato |
11 | Membro chiave ZREM [membro ...]
Rimuove uno o più membri da un insieme ordinato |
12 | ZREMRANGEBYLEX chiave min max
Rimuove tutti i membri in un insieme ordinato compreso nell'intervallo lessicografico specificato |
13 | ZREMRANGEBYRANK key start stop
Rimuove tutti i membri in un insieme ordinato all'interno degli indici specificati |
14 | ZREMRANGEBYSCORE chiave min max
Rimuove tutti i membri in un insieme ordinato all'interno dei punteggi dati |
15 | ZREVRANGE chiave start stop [WITHSCORES]
Restituisce un intervallo di membri in un insieme ordinato, per indice, con punteggi ordinati dal più alto al più basso |
16 | Min. Max chiave ZREVRANGEBYSCORE [WITHSCORES]
Restituisce un intervallo di membri in un insieme ordinato, in base al punteggio, con i punteggi ordinati dal più alto al più basso |
17 | Membro chiave di ZREVRANK
Determina l'indice di un membro in un insieme ordinato, con punteggi ordinati dal più alto al più basso |
18 | Membro chiave ZSCORE
Ottiene il punteggio associato al membro specificato in un set ordinato |
19 | ZUNIONSTORE destinazione numkeys key [key ...]
Aggiunge più set ordinati e memorizza il set ordinato risultante in una nuova chiave |
20 | Cursore tasto ZSCAN [schema MATCH] [COUNT conteggio]
Esegue l'iterazione incrementale degli elementi dei set ordinati e dei punteggi associati |