Redis
 sql >> Base de données >  >> NoSQL >> Redis

Premiers pas avec Redis

Lorsque Redis est opérationnel, vous pouvez commencer à l'utiliser !

Le moyen le plus simple est d'utiliser redis-cli , une application installée lorsque vous installez Redis.

C'est un moyen intégré d'écrire des commandes dans Redis sans avoir à configurer une application pour le faire.

Vous pouvez vous connecter à un serveur Redis distant en utilisant redis-cli -h <host> -p <port> -a <password>

Une fois que vous êtes dans l'application Redis CLI, vous pouvez commencer à y stocker des données.

Ajouter une valeur en utilisant la structure SET <key> <value> :

SET name "Flavio"

Récupérer une valeur

Récupérer une valeur en utilisant la structure GET <key> :

Vérifier si une clé existe

Nous pouvons également vérifier si une clé existe en utilisant EXISTS <key> :

La commande renvoie soit 1 (existe) soit 0 (n'existe pas).

Définir si n'existe pas

Une variante de SET nous permet de définir une clé uniquement si elle n'existe pas encore :

SETNX name "Roger"

Supprimer une clé

Supprimer une clé en utilisant DEL <key> :

Liste des clés existantes

Vous pouvez lister toutes les clés insérées en utilisant KEYS *

Ou vous pouvez filtrer en utilisant un modèle comme KEYS n* pour ne lister que les clés commençant par n , par exemple.

Chaque valeur stockée peut contenir jusqu'à 512 Mo de valeur.

Expiration des clés

Une clé peut être stockée temporairement et supprimée automatiquement à la fin de la minuterie :

SETEX <key> <seconds> <value>

Vous pouvez obtenir le temps restant pour qu'une clé soit effacée en utilisant TTL <key>

Dans cet exemple, j'ai défini un name clé avec Flavio comme valeur, et en utilisant TTL, je peux vérifier combien de temps il reste jusqu'à ce que la clé renvoie la valeur. Une fois le temporisateur expiré, il en résulte une valeur nulle (nil ):

Vous pouvez également définir une clé existante pour qu'elle expire en utilisant EXPIRE <key> seconds> .

Incrémentation et décrémentation

Une valeur numérique peut être incrémentée en utilisant INCR <key> et décrémenté avec DECR <key> . Vous pouvez également utiliser INCRBY <key> <amount> et DECRBY <key> <amount> pour incrémenter une valeur clé d'un montant spécifique :

Ces commandes sont très bien adaptées aux opérations simultanées élevées où de nombreux clients peuvent interagir avec les mêmes données, pour garantir des transactions atomiques .

L'exemple le plus courant est lorsque 2 clients différents essaient d'incrémenter le même nombre.

Sur une base de données comme PostgreSQL ou MongoDB, vous obtenez d'abord la valeur numérique, vous l'incrémentez, puis vous faites une demande au serveur pour l'incrémenter.

Dire que la valeur est 1 . Si deux clients lisent la valeur en utilisant GET puis ils appellent SET pour l'incrémenter indépendamment, au final si rien n'empêche le changement simultané de se produire, le résultat sera 2 . Redis prévient ce problème à la racine.

Structures de données plus complexes

Jusqu'à présent, nous avons travaillé avec des types de données simples comme des entiers et des chaînes.

Redis peut prendre en charge des structures plus complexes.

Voyons dans les prochaines leçons comment travailler avec :

  • Listes
  • Ensembles
  • Ensembles triés
  • Hachages