Introduction
Dans ce laboratoire, vous explorerez les structures de données fondamentales de Redis et apprendrez à interagir avec elles via l'outil en ligne de commande redis-cli. Ce laboratoire se concentre sur des exercices pratiques pour vous aider à comprendre comment stocker et récupérer des données dans Redis.
Vous commencerez par travailler avec les chaînes de caractères (Strings), en apprenant à définir, récupérer, vérifier l'existence et supprimer des valeurs. Ensuite, vous passerez aux listes (Lists) en utilisant des commandes comme LPUSH et LRANGE. Puis, vous gérerez des ensembles (Sets) avec SADD et SMEMBERS. Enfin, vous explorerez les tables de hachage (Hashes) à l'aide de HSET et HGET. Cette expérience pratique vous fournira une base solide pour utiliser Redis dans diverses applications.
Travailler avec des chaînes de caractères pour des données simples
Dans cette étape, nous allons explorer comment utiliser Redis pour stocker et récupérer des données textuelles simples. Redis est souvent utilisé comme cache ou comme magasin clé-valeur simple, et les chaînes de caractères sont le type de données le plus basique qu'il propose.
Tout d'abord, connectons-nous au serveur Redis en utilisant l'outil en ligne de commande redis-cli. Ouvrez un terminal dans la machine virtuelle LabEx. Vous devriez déjà être dans le répertoire ~/project.
Tapez la commande suivante pour vous connecter au serveur Redis :
redis-cli
Vous devriez voir une invite de commande qui ressemble à ceci :
127.0.0.1:6379>
Cela indique que vous êtes maintenant connecté au serveur Redis.
Maintenant, définissons une valeur de chaîne simple. Nous utiliserons la commande SET. La commande SET prend deux arguments : la clé et la valeur. Définissons une clé nommée mykey avec la valeur Hello Redis :
SET mykey "Hello Redis"
Vous devriez voir la sortie suivante :
OK
Cela signifie que la valeur a été définie avec succès.
Maintenant, récupérons la valeur en utilisant la commande GET. La commande GET prend un argument : la clé. Récupérons la valeur de mykey :
GET mykey
Vous devriez voir la sortie suivante :
"Hello Redis"
Cela confirme que nous avons réussi à stocker et à récupérer une valeur de chaîne dans Redis.
Essayons un autre exemple. Cette fois, stockons un nombre sous forme de chaîne.
SET counter 100
GET counter
Vous devriez voir :
"100"
Redis traite cela comme une chaîne, même s'il s'agit d'un nombre.
Vous pouvez également utiliser la commande EXISTS pour vérifier si une clé existe.
EXISTS mykey
Vous devriez voir :
(integer) 1
Cela indique que la clé mykey existe. Si la clé n'existe pas, la commande renverra (integer) 0.
Enfin, supprimons la clé en utilisant la commande DEL.
DEL mykey
Vous devriez voir :
(integer) 1
Cela indique que la clé mykey a été supprimée avec succès.
Maintenant, si vous essayez de récupérer à nouveau la valeur de mykey :
GET mykey
Vous devriez voir :
(nil)
Cela confirme que la clé a bien été supprimée.
N'oubliez pas de quitter redis-cli pour vous assurer que vos commandes sont enregistrées. Tapez :
exit
Cela vous ramènera à l'invite de commande habituelle du terminal.
Utiliser les listes avec LPUSH et LRANGE
Dans cette étape, nous allons explorer comment utiliser les listes Redis pour stocker et récupérer des collections ordonnées de données. Les listes Redis sont implémentées sous forme de listes chaînées, ce qui les rend efficaces pour ajouter ou supprimer des éléments au début ou à la fin de la liste. Nous nous concentrerons sur les commandes LPUSH et LRANGE.
Nous continuerons à utiliser l'outil en ligne de commande redis-cli. Si vous n'êtes pas déjà connecté, ouvrez un terminal dans la machine virtuelle LabEx et tapez :
redis-cli
Maintenant, créons une liste et ajoutons-y quelques éléments en utilisant la commande LPUSH. LPUSH ajoute des éléments à gauche (au début) de la liste. La commande LPUSH prend deux arguments ou plus : la clé de la liste et la ou les valeurs à ajouter. Créons une liste nommée mylist et ajoutons les valeurs item1, item2 et item3 :
LPUSH mylist item1
Vous devriez voir la sortie suivante :
(integer) 1
Cela signifie qu'un élément a été ajouté à la liste. La valeur de retour de LPUSH est la longueur de la liste après l'opération.
Maintenant, ajoutons les autres éléments :
LPUSH mylist item2
(integer) 2
LPUSH mylist item3
(integer) 3
Maintenant, récupérons les éléments de la liste en utilisant la commande LRANGE. LRANGE renvoie une plage d'éléments de la liste. La commande LRANGE prend trois arguments : la clé de la liste, l'index de début et l'index de fin. Les index commencent à zéro, donc le premier élément est à l'index 0. Pour récupérer tous les éléments de la liste, nous pouvons utiliser l'index de début 0 et l'index de fin -1.
LRANGE mylist 0 -1
Vous devriez voir la sortie suivante :
1) "item3"
2) "item2"
3) "item1"
Notez que les éléments sont renvoyés dans l'ordre inverse de leur ajout, car LPUSH ajoute les éléments au début de la liste.
Ajoutons quelques éléments supplémentaires à la liste :
LPUSH mylist item4
LPUSH mylist item5
Maintenant, récupérons les 3 premiers éléments de la liste (index 0 à 2) :
LRANGE mylist 0 2
Vous devriez voir :
1) "item5"
2) "item4"
3) "item3"
Vous pouvez également utiliser des index négatifs pour accéder aux éléments depuis la fin de la liste. Par exemple, pour récupérer le dernier élément de la liste, vous pouvez utiliser l'index -1 :
LRANGE mylist -1 -1
Vous devriez voir :
1) "item1"
N'oubliez pas de quitter redis-cli pour vous assurer que vos commandes sont enregistrées. Tapez :
exit
Cela vous ramènera à l'invite de commande habituelle du terminal.
Gérer les ensembles avec SADD et SMEMBERS
Dans cette étape, nous allons explorer comment utiliser les ensembles (Sets) Redis pour stocker et gérer des collections non ordonnées d'éléments uniques. Les ensembles Redis sont utiles pour des tâches telles que le suivi des visiteurs uniques, le stockage de tags ou la gestion des relations entre objets. Nous nous concentrerons sur les commandes SADD et SMEMBERS.
Nous continuerons à utiliser l'outil en ligne de commande redis-cli. Si vous n'êtes pas déjà connecté, ouvrez un terminal dans la machine virtuelle LabEx et tapez :
redis-cli
Maintenant, créons un ensemble et ajoutons-y quelques membres en utilisant la commande SADD. SADD ajoute un ou plusieurs membres à un ensemble. La commande SADD prend deux arguments ou plus : la clé de l'ensemble et le ou les membres à ajouter. Créons un ensemble nommé myset et ajoutons les membres member1, member2 et member3 :
SADD myset member1
Vous devriez voir la sortie suivante :
(integer) 1
Cela signifie qu'un membre a été ajouté à l'ensemble. La valeur de retour de SADD est le nombre de membres ajoutés à l'ensemble (en excluant les membres déjà présents).
Maintenant, ajoutons les autres éléments :
SADD myset member2
(integer) 1
SADD myset member3
(integer) 1
Maintenant, récupérons les membres de l'ensemble en utilisant la commande SMEMBERS. SMEMBERS renvoie tous les membres de l'ensemble. La commande SMEMBERS prend un argument : la clé de l'ensemble.
SMEMBERS myset
Vous devriez voir la sortie suivante (l'ordre des membres peut varier, car les ensembles ne sont pas ordonnés) :
1) "member3"
2) "member2"
3) "member1"
Essayons d'ajouter un membre en double à l'ensemble :
SADD myset member1
(integer) 0
Cela indique qu'aucun nouveau membre n'a été ajouté, car member1 était déjà présent dans l'ensemble.
Ajoutons quelques membres supplémentaires à l'ensemble :
SADD myset member4
SADD myset member5
Maintenant, récupérons à nouveau tous les membres :
SMEMBERS myset
Vous devriez voir quelque chose comme :
1) "member5"
2) "member4"
3) "member3"
4) "member2"
5) "member1"
L'ordre peut être différent.
N'oubliez pas de quitter redis-cli pour vous assurer que vos commandes sont enregistrées. Tapez :
exit
Cela vous ramènera à l'invite de commande habituelle du terminal.
Explorer les tables de hachage avec HSET et HGET
Dans cette étape, nous allons explorer comment utiliser les tables de hachage (Hashes) Redis pour stocker et récupérer des collections de paires champ-valeur. Les tables de hachage Redis sont utiles pour représenter des objets avec plusieurs attributs. Nous nous concentrerons sur les commandes HSET et HGET.
Nous continuerons à utiliser l'outil en ligne de commande redis-cli. Si vous n'êtes pas déjà connecté, ouvrez un terminal dans la machine virtuelle LabEx et tapez :
redis-cli
Maintenant, créons une table de hachage et ajoutons-y quelques champs et valeurs en utilisant la commande HSET. HSET définit la valeur d'un champ dans une table de hachage. La commande HSET prend trois arguments : la clé de la table de hachage, le champ et la valeur. Créons une table de hachage nommée myhash et définissons le champ field1 avec la valeur value1 :
HSET myhash field1 value1
Vous devriez voir la sortie suivante :
(integer) 1
Cela signifie qu'un nouveau champ a été ajouté à la table de hachage. La valeur de retour de HSET est 1 si le champ est nouveau dans la table de hachage, et 0 si le champ existait déjà et que la valeur a été mise à jour.
Maintenant, ajoutons un autre champ :
HSET myhash field2 value2
(integer) 1
Maintenant, récupérons la valeur d'un champ en utilisant la commande HGET. HGET obtient la valeur d'un champ dans une table de hachage. La commande HGET prend deux arguments : la clé de la table de hachage et le champ. Récupérons la valeur de field1 dans myhash :
HGET myhash field1
Vous devriez voir la sortie suivante :
"value1"
Cela confirme que nous avons réussi à stocker et à récupérer une paire champ-valeur dans la table de hachage.
Essayons de mettre à jour la valeur d'un champ existant :
HSET myhash field1 newvalue1
Vous devriez voir :
(integer) 0
Cela indique que le champ existait déjà et que sa valeur a été mise à jour.
Maintenant, récupérons à nouveau la valeur de field1 :
HGET myhash field1
Vous devriez voir :
"newvalue1"
Cela confirme que la valeur a bien été mise à jour.
Ajoutons quelques champs supplémentaires à la table de hachage :
HSET myhash field3 value3
HSET myhash field4 value4
N'oubliez pas de quitter redis-cli pour vous assurer que vos commandes sont enregistrées. Tapez :
exit
Cela vous ramènera à l'invite de commande habituelle du terminal.
Résumé
Dans ce laboratoire, nous avons exploré les structures de données fondamentales de Redis, en commençant par les chaînes de caractères. Nous avons appris à nous connecter à un serveur Redis en utilisant redis-cli, puis nous avons utilisé la commande SET pour stocker des valeurs associées à des clés. Nous avons ensuite récupéré ces valeurs à l'aide de la commande GET. Nous avons également vu comment Redis traite les nombres stockés sous forme de chaînes.
De plus, nous avons appris à créer et manipuler des listes avec LPUSH et LRANGE, à gérer des ensembles avec SADD et SMEMBERS, et à explorer les tables de hachage avec HSET et HGET. Ces commandes vous permettent de stocker et de récupérer différents types de données dans Redis, ce qui en fait un outil polyvalent pour diverses applications. N'oubliez pas de quitter redis-cli après chaque étape pour vous assurer que vos commandes sont enregistrées pour vérification.


