Redis: installazione e primi comandi

12 dicembre 2014

Redis è un DBMS NoSQL rilasciato per la prima volta nel 2009, di tipo “key/value storage”. Esso si basa infatti su una struttura a dizionario: ogni valore immagazzinato è abbinato ad una chiave univoca che ne permette il recupero.

Questo progetto si è guadagnato un posto di spicco tra i database NoSQL grazie ad alcuni vantaggi di rilievo:

  • estrema velocità: Redis conserva i dati in memoria RAM, salvandoli in maniera persistente solo in un secondo momento. Ciò permette di ottenere ottime prestazioni in scrittura e lettura;
  • dispone di una grande varietà di tipi di dato. Quindi nonostante l’architettura dell’archivio sia basata su una struttura a dizionario, i valori possono assumere varie forme: liste, dizionari stessi, e molto altro. Da questo punto di vista, Redis può essere visto come un gestore di strutture dati persistenti;
  • tutte le operazioni sono atomiche, quindi in caso di accessi concorrenti da parte di più client, i dati forniti risulteranno sempre aggiornati;
  • possibilità di implementare configurazioni multi-nodo, cluster e replication.

L’articolo introduce il lettore all’utilizzo pratico di Redis, dall’accesso interattivo da riga di comando all’utilizzo delle API, fino ad arrivare alle configurazioni in cluster.

Installazione e primi comandi

La prima cosa di cui abbiamo bisogno è un’installazione completa di Redis. Le principali distribuzioni Linux offrono pacchetti precompilati che rendono questo procedimento abbastanza agevole.

L’ambiente di test che abbiamo utilizzato per la stesura di questo articolo è basato su Ubuntu Server 14.04. Per ottenere Redis su questo sistema operativo è sufficiente il seguente comando da terminale:

apt-get install redis-server

In alternativa a questo metodo, si può procedere al download dei sorgenti da un’apposita pagina del sito ufficiale ( http://redis.io/download).

L’archivio ottenuto deve essere quindi scompattato, e si potrà avviare la compilazione:

tar xzf redis-2.8.17.tar.gz
cd redis.2.8.17
make

I comandi appena illustrati fanno riferimento alla versione 2.8.17 di Redis, quella attualmente stabile. Tale numero di versione dovrà, ovviamente, essere adattato a quello dell’ultimo rilascio al momento dell’utilizzo.

Qualunque percorso si sia seguito per ottenere il DBMS funzionante, si avrà a disposizione anche un client testuale interpellabile da riga di comando: redis-cli.

La prima prova che si può eseguire è la più naturale per un sistema basato sul meccanismo chiave/valore:

> redis-cli
127.0.0.1:6379> set nome Carlo

OK

127.0.0.1:6379> GET nome

"Carlo"

All’invio del comando redis-cli, si viene accolti da un altro prompt che riporta indirizzo IP del server (in questo caso lavoriamo in locale) e la porta TCP utilizzata, di default la 6379.

Come tutte le strutture dizionario, esistono due comandi principali: uno per inserire una nuova chiave valore (SET) ed una per recuperare il valore in base alla chiave (GET).

In questo caso, abbiamo inserito il valore “Carlo” in corrispondenza della chiave nome.

Altri comandi particolarmente utili per la gestione delle chiavi sono i seguenti:

ComandoDescrizione
DEL nome_chiaveCancella il valore corrispondente alla chiave
DUMP nome_chiaveEspone una versione serializzata del valore corrispondente alla chiave
EXISTS nome_chiaveVerifica l’esistenza della chiave. Ritorna un valore intero pari a 1 in caso affermativo, 0 in caso negativo
EXPIRE nome_chiave numero_secondiConsente di specificare dopo quanti secondi la chiave cessa di esistere
EXPIREAT nome_chiave timestampSpecifica un timestamp come scadenza della chiave
PEXPIRE nome_chiave numero_millisecondiCome EXPIRE, ma il tempo è specificato in millisecondi
PEXPIREAT nome_chiave timestampCome EXPIREAT, ma il timestamp è specificato in millisecondi
PERSISTRimuove la scadenza dalla chiave

Quando nel seguito parleremo di file di configurazione di Redis, ci si riferirà al file denominato redis.conf, disponibile nella cartella /etc del sistema operativo, o all’interno dei sorgenti di cui si è eseguita la compilazione: dipenderà dalla modalità di installazione che abbiamo scelto.

Se vuoi aggiornamenti su Redis: installazione e primi comandi inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Redis: installazione e primi comandi

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy