Redis zrem

Redis zrem

Redis a trié les membres

Les ensembles triés Redis stockent des éléments uniques d'une manière ordonnée. Par conséquent, il peut être utilisé dans des applications à faible latence telles que les files d'attente prioritaires, les classements en temps réel, l'indexation secondaire, etc. Chacun de ces éléments set se voit attribuer un rang et placé dans l'ordre croissant en fonction de la valeur du score. Plusieurs commandes sont disponibles pour ajouter, mettre à jour et supprimer efficacement les membres de l'ensemble triés. La chose la plus importante à propos des ensembles triés est qu'après l'addition ou la suppression d'un membre de jeu, il parvient toujours à maintenir les rangs des membres et à commander.


La figure ci-dessus montre le scénario de suppression de l'élément Tri Redis et comment il se comporte lorsque plusieurs membres sont retirés de celui-ci. Il parvient à conserver les valeurs d'ordre et d'indexes correctes en plaçant chaque membre en conséquence. Dans la section suivante, nous examinerons le fonctionnement de la suppression de l'ensemble trié de manière détaillée.

Retirer les membres avec la commande ZREM

La commande ZREM est utilisée pour supprimer un ou plusieurs membres d'un ensemble trié stocké sur une clé spécifiée. Cette commande a une complexité temporelle logarithmique. Si la commande est utilisée pour supprimer un élément, la complexité temporelle est proportionnelle à la valeur logarithmique du nombre d'éléments. Si plusieurs éléments ont été spécifiés pour supprimer, il sera O (numéro_of_elements_to_remove * log (total_number_of_set_elements)).

Syntaxe

ZREM SORED_SET_KEY Member [Membre…]


trimed_set_key: C'est l'identifiant unique où l'ensemble trié est stocké à.
membre: C'est le membre censé être supprimé.

La commande zrem supprimera les membres spécifiés de l'ensemble trié. Il renverra une réponse entière qui est le nombre de membres supprimés. Chaque fois que vous spécifiez un membre inexistant, il sera ignoré. De plus, la commande lancera une erreur si la clé donnée ne tient pas un ensemble trié.

Exemple - Gérer la file d'attente de la commande client avec redis zrem

Prenons un scénario du monde réel où un restaurant sert ses clients en fonction des premiers venus attribués avec la plus haute priorité. En servant d'abord les clients les plus prioritaires, le restaurant devrait supprimer chaque entrée client de la file d'attente. L'ensemble Tri Redis sera une structure de données idéale pour implémenter ce scénario d'une manière efficace et efficace.
Chaque membre de l'ensemble trié Redis ressemble à ce qui suit.


Comme le montre l'illustration ci-dessus, chaque fois qu'un client a été servi par le restaurant, ce membre doit être retiré de l'ensemble trié. Nous pouvons utiliser la commande zrem pour y parvenir.

Ajoutons les quatre clients illustrés dans la figure ci-dessus. Nous utiliserons la commande zadd pour créer l'ensemble trié CustomerQueue et ajouter quatre membres, comme indiqué dans ce qui suit.

Zadd CustomerQueue 1 Client: 10
Zadd CustomerQueue 9 Client: 1
Zadd CustomerQueue 7 Client: 6
Zadd CustomerQueue 5 Client: 2



Inspectons l'ensemble trié à l'aide de la commande ZRange.

Zrange Customerqueeue 0 10 withcores


Sortir:


Comme prévu, l'ensemble trié CustomerQueue a été commandé en fonction de la valeur de priorité.

Supprimer un membre de l'ensemble trié

Le Client: 10 qui a la plus haute priorité sera servie en premier. D'où le Client: 10 Les membres doivent être supprimés de l'ensemble trié. Utilisons la commande zrem pour supprimer le membre.

Client de Zrem CustomerQueue: 10


Sortir:


Comme prévu, la valeur de retour est 1, ce qui signifie qu'une entrée a été supprimée. Inspectons le CustomerQueue encore.


Le membre Client: 10 a été supprimé avec succès.

Supprimer plusieurs membres de l'ensemble trié

Disons les deux Client: 2 et Client: 6 ont été servis à partir de deux fenêtres paralelly. Par conséquent, nous devons supprimer les deux membres de l'ensemble trié. Nous pouvons utiliser la commande ZREM pour supprimer les deux membres à la fois.

ZREM CustomerQueue Client: 2 Client: 6


Sortir:


Comme prévu, la valeur de retour est de 2, ce qui indique que deux membres ont été supprimés. Inspectons à nouveau l'ensemble de l'ensemble trié.


La commande ZREM est recommandée à utiliser chaque fois que vous avez besoin de supprimer les éléments d'un ensemble trié.

Conclusion

Pour résumer, la commande zrem est utilisée pour supprimer un ou plusieurs éléments d'un ensemble trié redis stocké à une clé donnée. Il supprime simplement les membres spécifiés de l'ensemble trié. De plus, la commande sera conservée dans l'ensemble trié résultant. Comme indiqué ci-dessus, il a une complexité temporelle logarithmique qui fait que la commande est utilisée dans des applications en temps réel. Par conséquent, la commande ZREM est recommandée à l'utiliser chaque fois que vous avez besoin de supprimer les éléments d'un ensemble trié.