Redis
 sql >> Database >  >> NoSQL >> Redis

Primi passi con Redis

Quando Redis è attivo e funzionante, puoi iniziare a usarlo!

Il modo più semplice è usare redis-cli , un'applicazione installata durante l'installazione di Redis.

È un modo integrato per scrivere comandi su Redis senza dover configurare un'applicazione per farlo.

Puoi connetterti a un server Redis remoto usando redis-cli -h <host> -p <port> -a <password>

Una volta che sei nell'app Redis CLI, puoi iniziare a memorizzare i dati al suo interno.

Aggiungere un valore utilizzando la struttura SET <key> <value> :

SET name "Flavio"

Recupera un valore

Recupera un valore usando la struttura GET <key> :

Verifica se esiste una chiave

Possiamo anche verificare se esiste una chiave usando EXISTS <key> :

Il comando restituisce 1 (esiste) o 0 (non esiste).

Imposta se non esiste

Una variazione di SET ci consente di impostare una chiave solo se non esiste ancora:

SETNX name "Roger"

Elimina una chiave

Eliminare una chiave utilizzando DEL <key> :

Elencare le chiavi esistenti

Puoi elencare tutte le chiavi inserite usando KEYS *

Oppure puoi filtrare usando uno schema come KEYS n* per elencare solo le chiavi che iniziano con n , per esempio.

Ogni valore memorizzato può contenere fino a 512 MB di valore.

Chiavi in ​​scadenza

Una chiave può essere memorizzata temporaneamente e rimossa automaticamente allo scadere del timer:

SETEX <key> <seconds> <value>

È possibile ottenere il tempo rimanente per la cancellazione di una chiave utilizzando TTL <key>

In questo esempio ho impostato un name chiave con Flavio come valore e usando TTL posso controllare quanto tempo è rimasto prima che la chiave restituisca il valore. Una volta scaduto il timer, risulta in un valore nullo (nil ):

Puoi anche impostare la scadenza di una chiave esistente utilizzando EXPIRE <key> seconds> .

Incrementa e decrementa

Un valore numerico può essere incrementato usando INCR <key> e decrementato usando DECR <key> . Puoi anche usare INCRBY <key> <amount> e DECRBY <key> <amount> per incrementare un valore chiave di un importo specifico:

Questi comandi sono molto adatti per operazioni simultanee elevate in cui molti client potrebbero interagire con gli stessi dati, per garantire transazioni atomiche .

L'esempio più comune è quando 2 client diversi tentano di incrementare lo stesso numero.

Su un database come PostgreSQL o MongoDB ottieni prima il valore numerico, lo incrementi, quindi fai una richiesta al server per incrementarlo.

Supponiamo che il valore sia 1 . Se due client leggono il valore usando GET poi chiamano SET per incrementarlo in modo indipendente, alla fine se non c'è nulla che impedisca la modifica simultanea, il risultato sarà 2 . Redis previene questo problema alla radice.

Strutture dati più complesse

Finora abbiamo lavorato con tipi di dati semplici come interi e stringhe.

Redis può supportare strutture più complesse.

Vediamo nelle prossime lezioni come lavorare con:

  • Elenchi
  • Set
  • Insiemi ordinati
  • Hash