Galleria mappe mentale Redis
Questa è una mappa mentale su Redis, con un'introduzione dettagliata e una descrizione completa. Spero che possa essere utile agli amici interessati!
Modificato alle 2023-12-21 17:36:42個人求職簡歷模板的暗黑配色方案,包括個人簡介、職業規劃、行業經驗、自我評價等多個部分,讓你的簡歷更出彩。使用模板可以極大地提高效率,用戶不需要從頭開始設計結構和內容,只需在模板的基礎上填寫或添加自己的信息即可,這樣可以節省大量的時間和精力,歡迎參考使用!持續分享給大家……
Se non sai come scrivere un articolo, sarai nei guai come manager dei sistemi informativi. Una guida passo passo su come scrivere un documento sulla gestione del rischio. Se ne hai bisogno, ritiralo velocemente!
Il programma dietetico formula un programma dietetico scientifico e ragionevole per soddisfare i nutrienti e l'energia richiesti dal corpo, mantenendo così una buona salute e una buona postura.
個人求職簡歷模板的暗黑配色方案,包括個人簡介、職業規劃、行業經驗、自我評價等多個部分,讓你的簡歷更出彩。使用模板可以極大地提高效率,用戶不需要從頭開始設計結構和內容,只需在模板的基礎上填寫或添加自己的信息即可,這樣可以節省大量的時間和精力,歡迎參考使用!持續分享給大家……
Se non sai come scrivere un articolo, sarai nei guai come manager dei sistemi informativi. Una guida passo passo su come scrivere un documento sulla gestione del rischio. Se ne hai bisogno, ritiralo velocemente!
Il programma dietetico formula un programma dietetico scientifico e ragionevole per soddisfare i nutrienti e l'energia richiesti dal corpo, mantenendo così una buona salute e una buona postura.
Redis
affari
definizione
Una transazione è un'operazione di isolamento separata. Tutte le operazioni nella transazione verranno serializzate ed eseguite in ordine. L'esecuzione della transazione non verrà interrotta dai comandi inviati da altri client.
effetto
Concatena più comandi per evitare che altri comandi saltino nella coda
Ordine
Tasto GUARDA [tasto ...]
Prima di eseguire multi, eseguire prima watch key1 [key2], che può monitorare una (o più) chiavi. Se questa (o queste) chiavi vengono modificate da altri comandi prima dell'esecuzione della transazione, la transazione verrà interrotta.
Multiplo
I comandi immessi entreranno nella coda dei comandi, ma non verranno eseguiti. Aspetteranno l'esecuzione del comando Exec, quindi li eseguiranno in sequenza.
Esecutivo
Esegui la coda dei comandi
scartare
Elimina la coda dei comandi
Gestione degli errori di transazione
La formazione della squadra ha avuto successo e l'esecuzione ha avuto successo Tutti i comandi verranno eseguiti in modo ordinato.
Se la squadra viene formata con successo, seleziona Scarta e tutti i comandi non verranno eseguiti.
Se si verifica un errore in un comando in coda, l'intera coda verrà cancellata durante l'esecuzione.
La squadra viene formata con successo, ma un certo comando va storto durante l'esecuzione Ad eccezione del comando sbagliato, tutti gli altri comandi verranno eseguiti.
Le transazioni Redis non sono atomiche
Tre caratteristiche principali delle transazioni Redis
operazioni di quarantena separate
Tutti i comandi in una transazione vengono serializzati ed eseguiti in sequenza. Durante l'esecuzione della transazione, questa non verrà interrotta dalle richieste di comando inviate da altri client.
Nessun concetto di livello di isolamento
I comandi in coda non verranno effettivamente eseguiti finché non verranno inviati, poiché nessuna istruzione verrà effettivamente eseguita prima dell'invio della transazione.
Nessuna garanzia di atomicità
Se un comando nella transazione non viene eseguito, i comandi successivi verranno comunque eseguiti senza rollback.
La differenza tra transazioni Redis e transazioni Mysql (intorno a ACID)
Persistenza
RDB
Configurazione principale
dbfilename nome del file di configurazione
salva
Quante operazioni sono state eseguite in quanti secondi?
Attiva RDB
Attiva automaticamente il salvataggio
Bloccherà il processo principale fino al completamento della persistenza RDB
Salvataggio manuale: bgsave
Redis eseguirà le operazioni di snapshot in modo asincrono in background e lo snapshot potrà anche rispondere alle richieste del client.
È possibile ottenere l'ora dell'ultima esecuzione dello snapshot tramite lastsave.
Non blocca il processo principale
Esegui il comando flushall
Anche l'esecuzione del comando flushall genererà il file dump.rdb, ma è vuoto e privo di significato.
Il comando flushdb non genera il file dump.rdb
Esci da Redis normalmente
Altre configurazioni in redis.conf
stop-writes-on-bgsave-error
Quando Redis non riesce a scrivere sul disco, disattivare direttamente l'operazione di scrittura di Redis. Consiglia sì
File compressi con compressione rdb
Se non vuoi consumare CPU per la compressione, puoi disattivare questa funzione. Consiglia sì.
rdbchecksum controlla l'integrità
Dopo aver archiviato lo snapshot, puoi anche chiedere a Redis di utilizzare l'algoritmo CRC64 per la verifica dei dati.
Processo di persistenza (istantanea della memoria)
Redis creerà (fork) un processo figlio separatamente per la persistenza. Per prima cosa scriverà i dati in un file temporaneo Una volta completato il processo di persistenza, questo file temporaneo verrà utilizzato per sostituire l'ultimo file persistente. Durante l'intero processo, il processo principale non esegue alcuna operazione IO, il che garantisce prestazioni estremamente elevate Se è necessario un ripristino dei dati su larga scala e l'integrità del ripristino dei dati non è molto sensibile, il metodo RDB è più efficiente del metodo AOF. .di alta efficienza. Lo svantaggio di RDB è che i dati dopo l'ultima persistenza potrebbero andare persi
La funzione di Fork è copiare un processo uguale al processo corrente. Tutti i dati (variabili, variabili d'ambiente, contatore del programma, ecc.) del nuovo processo hanno gli stessi valori del processo originale, ma è un processo completamente nuovo e funge da processo figlio del processo originale.
Vantaggio
Adatto per il recupero dati su larga scala
Più adatto per requisiti di integrità e coerenza dei dati non elevati
Risparmia spazio su disco
Recupero veloce
Svantaggi
Tutte le modifiche dell'ultima istantanea potrebbero andare perse
AOF
introdurre
Registra ogni operazione di scrittura sotto forma di registro. I file possono solo essere aggiunti ma non riscritti.
Non abilitato per impostazione predefinita
aggiungi solo no
Quando AOF e RDB sono abilitati contemporaneamente, ad AOF verrà data la priorità.
processo di persistenza
Il comando di scrittura richiesto dal client verrà aggiunto al buffer AOF.
Il buffer AOF sincronizza le operazioni sul file AOF su disco in base alla politica di persistenza AOF.
Quando il file AOF supera i criteri di riscrittura o viene riscritto manualmente, il file AOF verrà riscritto per comprimere la capacità del file AOF.
Quando il server Redis si riavvia, caricherà le operazioni di scrittura nel file AOF.
Impostazione della frequenza di sincronizzazione
appendfsync sempre
Sempre sincronizzato, ogni scrittura Redis verrà registrata immediatamente nel registro; le prestazioni sono scarse ma l'integrità dei dati è migliore;
aggiungi fsync ogni secondo
Sincronizza ogni secondo, scrivi prima il registro nel buffer di memoria del file AOF, quindi scrivi il contenuto del buffer sul disco ogni secondo. Se si verifica un tempo di inattività, i dati di questo secondo potrebbero andare persi.
appendfsync n
Redis non si sincronizza attivamente e lascia i tempi di sincronizzazione al sistema operativo.
Vantaggio
Il meccanismo di backup è più robusto e i dati non vengono persi facilmente
File di registro leggibili per gestire le operazioni di errore
Svantaggi
Occupa più spazio su disco rispetto a RDB
Lenta ripresa
Se la lettura e la scrittura fossero sempre sincronizzate, le prestazioni sarebbero sotto pressione.
Ci sono alcuni bug che rendono impossibile il ripristino.
Strategia di eliminazione della chiave scaduta di Redis
Redis utilizza una combinazione di strategie di eliminazione regolare e di eliminazione lenta.
Eliminazione periodica: di tanto in tanto, le chiavi con data di scadenza vengono selezionate casualmente, controllate per vedere se sono scadute ed eliminate dopo la scadenza.
Ripeti 10 volte ogni secondo, seleziona casualmente 20 chiavi per verificare se sono scadute. Se il 25% delle chiavi è scaduto, ripeti questo comportamento
Mancheranno molte chiavi scadute
Eliminazione lenta: quando i dati scadono, non verranno elaborati prima quando si accede alla chiave scaduta, verrà eliminata.
Scambia spazio per tempo
Se molte chiavi scadute vengono perse e non controllate, l'eliminazione lenta non verrà eseguita. Un numero elevato di chiavi scadute si accumulerà nella memoria, causando l'esaurimento della memoria Redis. A questo punto, verrà utilizzato il meccanismo di eliminazione della memoria.
Replica master-slave
cosa è
Dopo che i dati dell'host sono stati aggiornati, i dati vengono automaticamente sincronizzati con il meccanismo master/slave in base alla politica. Il master è responsabile della scrittura e lo slave è responsabile della lettura.
Cosa sai fare
Separazione di lettura e scrittura, espansione delle prestazioni
Ripristino di emergenza e ripristino rapido per migliorare la disponibilità
Come giocare
Avvia più servizi Redis
Configura la libreria slave
Esegui slavedella porta IP
Interroga informazioni master-slave
replicazione delle informazioni
Situazioni comuni
Un padrone e due servi
La macchina schiava può scrivere? È possibile impostare?
Non può essere scritto, né può essere impostato.
Cosa succede dopo la chiusura dell'host? Lo slave è nella posizione superiore o in standby?
La macchina slave è in standby
Dopo che il master ritorna e aggiunge un nuovo record, lo slave può comunque copiarlo senza problemi?
Potere
Cosa succede dopo che una delle macchine slave si guasta? Riuscirà a tenere il passo con il grande esercito così com'è?
Potere
Passare il testimone
Le macchine con doppia identità di master e slave possono scrivere dati? ?
No, finché hai l'identità dello schiavo, non puoi scrivere dati.
Principalmente anti-cliente
Se la macchina master non funziona, è possibile trasformare manualmente la macchina slave in macchina master.
Principio di copia
Dopo che lo slave si avvia e si connette con successo al master, invierà un comando di sincronizzazione.
Il master riceve il comando per avviare il processo di salvataggio in background e raccoglie tutti i comandi ricevuti per modificare il set di dati Una volta completato il processo in background, il master trasferirà l'intero file di dati RDB allo slave per completare una sincronizzazione completa.
Copia completa: dopo aver ricevuto i dati del file di database, il servizio slave li salva e li carica in memoria.
Replica incrementale: il master continua a passare tutti i nuovi comandi di modifica raccolti allo slave per completare la sincronizzazione
Ma finché il master viene ricollegato, verrà eseguita automaticamente una sincronizzazione completa (replica completa)
Modalità sentinella
Sentinel è un processo Redi in esecuzione in modalità funzionalità e ha tre attività principali:
tenere sotto controllo
Invia comandi PING a tutte le librerie master-slave per verificare se sono attive. Se non rispondono entro il tempo specificato, verranno giudicate offline.
Soggettivo offline
Se la sentinella rileva che la risposta della libreria master o slave al comando PING scade, la sentinella corrente la contrassegnerà prima Per "soggettivo offline
Obiettivo offline
Se N/2 sentinelle contrassegnano il database principale come soggettivamente offline, allora il database principale verrà contrassegnato come "oggettivamente offline"
Solo quando il database principale viene contrassegnato come oggettivamente offline, Sentinel sceglierà un nuovo database principale.
Se è presente una sola sentinella e, a causa di motivi di rete o di pressione eccessiva sul database principale, il database principale non risponde in tempo alla sentinella e viene contrassegnato come offline soggettivo dalla sentinella. In questo momento, c'è solo una sentinella e un nuovo database principale verrà eletto direttamente. Se è presente una sentinella, il nuovo database principale verrà eletto direttamente. In un cluster, più di N/2 1 sentinelle devono contrassegnare il database principale come soggettivo offline, quindi il database principale verrà contrassegnato come oggettivamente offline e quindi le sentinelle eleggeranno un nuovo database principale per ridurre gli errori di valutazione.
Scegli il maestro
Se la libreria master fallisce, verrà selezionata una nuova libreria master dalla macchina slave.
Il processo di elezione di un nuovo database principale
filtro
Dall'attuale stato on-line della biblioteca, è necessario anche determinare il suo precedente stato di connessione di rete.
Punto
Priorità della libreria slave
Copia i progressi dalla libreria
Numero ID della libreria slave
notificare
Invia le informazioni sulla nuova libreria master ad altre librerie slave, consenti ad altre librerie slave di stabilire connessioni con la nuova libreria master ed eseguire la replica dei dati.
cosa è
La versione automatica anti-cliente può monitorare in background se l'host è difettoso, in caso di fallimento passerà automaticamente dal database slave al database principale in base al numero di voti.
Come giocare
Crea un nuovo file sentinel.conf, il nome non deve essere sbagliato
Configura sentinella e compila il contenuto
monitor sentinella mymaster 127.0.0.1 6379 1
Tra questi, mymaster è il nome del server dell'oggetto di monitoraggio e 1 è il numero minimo di sentinelle che accettano di migrare.
Avvia Sentinella
/usr/locale/bin
Esegui redis-sentinel /myredis/sentinel.conf
Quando il master riattacca, verrà selezionato un nuovo master tra gli slave.
regole elettorali
priorità
Impostazione predefinita in redis.conf: priorità replica 100, minore è il valore, maggiore è la priorità.
Compensare
L'offset si riferisce ai dati più completi ottenuti dall'host originale.
runico
Dopo l'avvio di ciascuna istanza Redis, verrà generato in modo casuale un runid di 40 cifre (ottienito e visualizzato tramite il server informazioni)
grappolo
Cos'è un cluster
Espansione orizzontale di Redis
Se alcuni nodi nel cluster falliscono o non riescono a comunicare, il cluster può continuare a elaborare le richieste di comando.
Se la macchina master è inattiva, la macchina slave verrà automaticamente promossa a Master.
Configurazione
Modifica della configurazione del cluster Redis
abilitato per il cluster sì, attiva la modalità cluster
cluster-config-file nodes-6379.conf imposta il nome del file di configurazione del nodo
cluster-node-timeout 15000 imposta il tempo di disconnessione del nodo Dopo questo tempo (millisecondi), il cluster passa automaticamente tra master e slave.
avviare
redis-cli --cluster create --cluster-replicas 1 192.168.11.101:6379 192.168.11.101:6380 192.168.11.101:6390 192 . 168.11.101:6391
Non utilizzare 127.0.0.1, utilizzare un indirizzo IP reale
Cosa sono le slot
Un cluster Redis contiene 16384 slot hash e ogni chiave nel database appartiene a uno di questi 16384 slot.
Per valori chiave che non si trovano nello stesso slot, non è possibile utilizzare operazioni multi-chiave come mget e mset.
Svantaggi del clustering
Il funzionamento con più tasti non è supportato
Le transazioni Redis a chiave multipla non sono supportate. lo script lua non è supportato
Più complesso
Perché un cluster richiede almeno tre nodi
Se un nodo è inattivo e più della metà dei nodi ritiene che sia inattivo attraverso il meccanismo di voto del ping-pong, il cluster sarà inattivo. Se ci sono solo due nodi e un nodo è inattivo, l'altro nodo voterà. Solo il 50%, ma la metà di loro, questo cluster non fallirà, quindi sono necessari almeno tre nodi
Perché un cluster richiede almeno sei server
Poiché un cluster richiede almeno tre nodi e ciascun nodo richiede una macchina di backup, un cluster richiede almeno sei server.
Jedis per lo sviluppo della connessione JAVA
Dipendenza: <artifactId>jedis</artifactId>
Pool di connessione JedisPool
setBlockWhenExhausted
/Se bloccare quando la connessione è esaurita, false segnalerà un'eccezione, true bloccherà fino al timeout, il valore predefinito è true
setTestOnBorrow
Verificare se la connessione è disattivata quando la si recupera dal pool di connessioni
Cablaggio automatico degli oggetti JedisPool
Cinque principali tipi di dati
applicazione
Utilizzo di base
manuale di installazione
redis-benchmark: uno strumento di test delle prestazioni che può essere eseguito sul tuo notebook per vedere come funziona il tuo notebook.
redis-check-aof: ripara i file AOF problematici, rdb e aof verranno discussi più avanti
redis-check-dump: risolve il file dump.rdb problematico
redis-sentinel: utilizzato dal cluster Redis
redis-server: comando di avvio del server Redis
redis-cli: cliente, ingresso operazione
File di configurazione redis.conf
Inizia in sottofondo
demonizzare il no al sì
Avviare il server redis-server /myredis/redis.conf
Utilizzare il client per accedere a redis-cli
-p specifica la porta
-c modalità cluster
Configurazione relativa alla rete
legamento
Nessuna scrittura significa accesso illimitato a tutti gli indirizzi IP.
modalità protetta
Abilitato per impostazione predefinita Anche se viene accettato l'accesso da tutti gli indirizzi IP, l'accesso non potrà avere esito positivo.
Numero di porta del porto
Predefinito 6379
coda di connessione tcp-backlog
tempo di timeout
Quanto tempo impiega un client inattivo per chiudersi? 0 disattiva questa funzione, ovvero la connessione non verrà mai interrotta.
rilevamento del battito cardiaco dei client tcp-keepalive
Se impostato su 0, il rilevamento keepalive non verrà eseguito.
Configurazione comune
demonizza il thread del demone
L'impostazione predefinita no è sì, che è un processo daemon e può essere avviato in background.
pidfile La posizione in cui è archiviato il file pid
loglevel livello di registro
debug: stamperà e genererà una grande quantità di informazioni, adatte alla fase di sviluppo/test
verbose: contiene molte informazioni meno utili, ma non crea confusione quanto il livello di debug
avviso: moderatamente prolisso, adatto per ambienti di produzione
avviso: registra solo i messaggi di avviso molto importanti e critici
logfile nome del file di registro
Il valore predefinito è il file di registro stdout
database imposta il numero di database
Il numero predefinito di database è 16 e il database selezionato predefinito è 0
limite
maxclients numero massimo di connessioni al server
L'impostazione predefinita è connessioni da 1 W. Quando viene raggiunto il limite superiore, la connessione verrà rifiutata.
maxmemory
Si consiglia di impostarlo, altrimenti la memoria sarà piena e causerà l'arresto anomalo del server.
maxmemory-policy politica di eliminazione della memoria
volatile-lru: utilizza l'algoritmo LRU per rimuovere le chiavi, solo le chiavi con data di scadenza impostata (usate meno di recente);
volatile-ttl: rimuove le chiavi con il valore TTL più piccolo, ovvero quelle chiavi che scadranno di recente
volatile-random: rimuove le chiavi casuali dal set scaduto, solo le chiavi con un tempo di scadenza impostato
allkeys-lru: utilizza l'algoritmo LRU per rimuovere le chiavi da tutte le chiavi impostate
allkeys-random: rimuove le chiavi casuali da tutte le chiavi impostate
nosfratto: nessuna rimozione. Per le operazioni di scrittura, vengono restituite solo le informazioni sull'errore
Limite I/O
io-threads-do-reads Indica se abilitare il multi-threading IO
Il valore predefinito è no. Se abilitato, modificalo in sì.
io-threads Numero di thread IO
Si consiglia di impostare 2 o 3 thread per una macchina a 4 core e 6 thread per una macchina a 8 core. Il numero di thread deve essere inferiore al numero di core della macchina e cercare di non superare 8.
Redis è chiuso
Arresto di un'istanza singola
arresto di redis-cli
Arresto di più istanze
redis-cli -p 6379 arresto
Multiplexing IO multiplo a thread singolo
Redis6.0 introduce il multithreading
Base di dati NoSQL
Cos'è un database NoSQL
Non segue gli standard SQL
Non supporta ACID
atomicita
consistenza
Isolamento
persistenza
Supera di gran lunga le prestazioni di SQL
Scena applicabile
Lettura e scrittura di dati altamente simultanea
Lettura e scrittura di enormi quantità di dati
Altamente scalabile per i dati
Scenario non utilizzato
Hai bisogno di supporto per le transazioni
Richiede l'archiviazione di query strutturate, l'elaborazione di relazioni complesse e query ad hoc
Query ad hoc: gli utenti possono selezionare in modo flessibile le condizioni della query in base alle proprie esigenze e il sistema genera report statistici corrispondenti in base alle selezioni dell'utente.
Redis cinque principali tipi di dati
Tipo di stringa
aumento
imposta <chiave><valore>Aggiungi coppia chiave-valore
setex <chiave><ora di scadenza><valore> Quando si imposta il valore della chiave, impostare il tempo di scadenza in secondi.
setnx <chiave><valore>Imposta il valore della chiave solo se la chiave non esiste
mset <key1><value1><key2><value2>Imposta una o più coppie chiave-valore contemporaneamente
controllo
get <key> Interroga il valore della chiave corrispondente
strlen <chiave> ottiene la lunghezza del valore
mget <key1><key2><key3> Ottieni uno o più valori contemporaneamente
getrange <chiave><posizione iniziale><posizione finale> Ottieni l'intervallo di valori, simile alla sottostringa in Java, pacchetto anteriore, pacchetto posteriore
modifica
incr <tasto>
Aumenta di 1 il valore numerico memorizzato nella chiave
Può operare solo su valori numerici. Se è vuoto, il nuovo valore è 1.
decr <tasto>
Decrementa di 1 il valore numerico memorizzato nella chiave
Può operare solo su valori numerici. Se è vuoto, il nuovo valore è -1
incrby / decrby <key><step>aumenta o diminuisce il valore numerico memorizzato nella chiave. Dimensioni del passo personalizzate.
eliminare
del tasto
speciale
aggiungi <chiave><valore> aggiunge il <valore> specificato alla fine del valore originale
getset <chiave><valore>
Sostituisci il vecchio con il nuovo, imposta un nuovo valore e ottieni il vecchio valore allo stesso tempo
Il numero del prodotto e il numero dell'ordine vengono generati utilizzando le caratteristiche numeriche crescenti della stringa.
Tipo di elenco
aumento
lpush/rpush <key><value1><value2><value3> .... Inserisci uno o più valori da sinistra/destra.
controllo
lrange <tasto><start><stop>
Ottieni gli elementi in base al pedice dell'indice (da sinistra a destra)
lindex <key><index>Ottiene gli elementi in base al pedice dell'indice (da sinistra a destra)
llen <key> ottiene la lunghezza dell'elenco
modifica
lset<chiave><indice><valore>sostituisce il valore il cui pedice è indice nella chiave dell'elenco con valore
eliminare
lrem <key><n><value>Elimina n elementi uguali al valore da sinistra (da sinistra a destra)
speciale
lpop/rpop <key>Emette un valore da sinistra/destra. Il valore è nella chiave e il valore è nella chiave.
rpoplpush <key1> <key2> emette un valore dal lato destro dell'elenco <key1> e lo inserisce nel lato sinistro dell'elenco <key2>.
linserisci <chiave> prima di <valore><nuovovalore>Inserisci <nuovovalore> dopo <valore> per inserire il valore
Come l'elenco degli amici, l'elenco dei fan, la coda dei messaggi, la classifica delle ultime notizie, ecc. Il metodo rpush equivale a mettere il messaggio in coda e lpop/rpop equivale a prendere il messaggio dalla coda per il consumo.
Tipo di hash
aumento
hset <chiave><campo><valore> assegna <valore> alla chiave <campo> nella raccolta <chiave>
hmset <key1><field1><value1><field2><value2>... Imposta i valori hash in batch
controllo
hget <key1><field> recupera il valore dalla raccolta <key1> <field>
hmget <key1><field1> <field2>... Ottieni valori hash in batch
hlen <key> ottiene il numero di valori di campo nell'hash
hexists<key1><field>Controlla se il campo specificato esiste nella chiave della tabella hash
modifica
hincrby <key><field><increment> aggiunge incremento al valore del campo campo nella chiave della tabella hash (negativo significa sottrazione)
hsetnx <key><field><value> imposta il valore del campo campo nella chiave della tabella hash su valore se e solo se campo campo non esiste
eliminare
hdel <key><field> elimina il <field> specificato nella raccolta <key>
speciale
hgetall <key> inserisce tutti i campi e i valori
hkeys <key> elenca tutti i campi del set hash
hvals <key> elenca tutti i valori del set hash
Utilizzare un oggetto per archiviare informazioni sull'utente, informazioni sul prodotto, informazioni sull'ordine, ecc.
Tipo ZSet
aumento
zadd <chiave><punteggio1><membro 1><punteggio2><membro 2>…
Aggiungi uno o più elementi membro e i relativi valori di punteggio alla chiave del set ordinato
controllo
zcard<key> restituisce il numero di elementi nell'insieme ordinato
zcount <key><min><max> conta il set, il numero di elementi nell'intervallo del punteggio
zrange <tasto><inizio><stop> [WITHSCORES] Ordina da piccolo a grande
Restituisce gli elementi nella chiave dell'insieme ordinato i cui pedici sono compresi tra <start><stop>
Con WITHSCORES, i punteggi e i valori possono essere restituiti al set di risultati.
zrevrange <key><start><stop> [WITHSCORES] Ordina da grande a piccolo
chiave zrangebyscore min max [withscores] [limite conteggio offset]
Restituisce tutti i membri della chiave dell'insieme ordinato il cui valore del punteggio è compreso tra min e max (incluso uguale a min o max). I membri dell'insieme ordinato sono disposti in ordine crescente di valore del punteggio (dal piccolo al grande).
zrevrangebyscore key max min [withscores] [limit offset count] (nota che il parametro è size)
Come sopra, ma disposti dal più grande al più piccolo.
zrank <key><member> restituisce il rango del membro nella chiave dell'insieme ordinato. I membri dell'insieme ordinato sono disposti in ordine crescente di valore del punteggio (dal piccolo al grande). La classifica si basa su 0, ovvero il membro con il valore di punteggio più basso viene classificato 0.
zrevrank <chiave><membro> Ottieni la classifica dei membri in ordine decrescente del valore del punteggio (da grande a piccolo).
modifica
zincrby <key><increment><member > aggiunge un incremento al punteggio dell'elemento
eliminare
zrem <key><member>Elimina l'elemento con il valore specificato nella raccolta
speciale
Classifica: ad esempio, un sito Web di video deve classificare i video caricati dagli utenti.
Imposta il tipo
aumento
sadd <chiave><valore1><valore2> .....
Aggiungi uno o più elementi membro alla chiave della raccolta. Gli elementi membro esistenti verranno ignorati.
controllo
smembers <key> elimina tutti i valoridella raccolta
scard<key> restituisce il numero di elementi nella raccolta
ismember<key> <value> Interroga se il valore nella raccolta esiste già
modifica
eliminare
srem <chiave><valore1><valore2> .... Elimina un elemento nella raccolta
speciale
spo <key> emette un valore casuale dalla raccolta
smove <source><destination>value sposta un valore nella raccolta da una raccolta a un'altra
sinter <key1><key2> restituisce l'elemento di intersezione di due insiemi.
sunion <key1><key2> restituisce gli elementi di unione di due insiemi.
sdiff <key1><key2> restituisce gli elementi di differenza dei due insiemi (quelli in key1, esclusi quelli in key2)
registro delle votazioni Amici comuni, interessi comuni, tag di classificazione