Redis hexists

Redis hexists

Hachage redis

La carte est une structure de données largement utilisée dans le contexte de la programmation. C'est une technique largement utilisée pour stocker les paires de valeurs clés. Chaque clé se correspond à une certaine valeur comme indiqué dans les éléments suivants:

Les hachages redis suivent la même structure interne. Mais ils ne vous permettront pas de stocker des types de valeur complexes tels que set, liste ou hachage. Il existe des moyens de pointer les valeurs de champ de hachage vers les autres types de données complexes, mais il n'est pas simple.

Utilisation pratique des hachages redis

Les hachages redis sont très efficaces dans deux scénarios différents:

  1. Représentation d'objet
  2. Stocker de petites valeurs de données compactes

Représentation d'objets à l'aide de hashs redis

En programmation, les objets représentent les entités réelles avec leurs états et leurs comportements. Habituellement, un objet a un identifiant (nom) et des propriétés internes comme indiqué dans ce qui suit:

Les hachages redis sont capables de stocker ce type d'objet dans son stockage. Nous savons que Redis est le stockage de paires de valeurs clés. Par conséquent, l'objet précédent peut être représenté comme indiqué dans ce qui suit:

Clé : Utilisateur: 001

Valeur : Les propriétés internes en tant que hachage redis

La représentation plus détaillée est indiquée dans ce qui suit.

Clé : Utilisateur: 001

Valeur : "Name" => "Mike"

«Âge» => «35»

«Country» => «USA»

"Ismarried" => "true"

La partie de couleur verte est une valeur de type de hachage redis. Dans ce cas, nous avons obtenu quatre champs dans notre hachage et la clé est l'utilisateur: 001.

Stocker de petites valeurs de données compactes

Imaginez que nous allons stocker les 100000 paires de valeurs de terrain dans une base de données Redis. Le moyen le plus typique est de créer les 100000 clés de niveau supérieur pointant vers les valeurs pertinentes. Cette méthodologie ne sera pas efficace comme vous pourriez le penser. Par conséquent, nous pouvons utiliser les hachages pour optimiser les performances.

Il y a un gain de performance dans les hachages chaque fois qu'un hachage a un petit nombre de champs. Redis augmente l'efficacité d'accès d'un montant considérable. Nous appelons cette petite optimisation de stockage de hachage de Redis. Par conséquent, nous pouvons garder les 1000 hachages chacun avec 100 champs internes comme indiqué dans les éléments suivants:

La meilleure chose à propos des hachages est qu'ils peuvent stocker jusqu'à 2 ^ 32-1 paires de valeurs de champ dans le format de texte brut. C'est une grande quantité de données, plus de 4 milliards.

Commandes de hachage redis

Redis vous permet d'effectuer des opérations sur les hachages. Il y a environ 15 commandes de hachage disponibles à utiliser telles que HSET, Hexistes, Hget, Hgetall, etc. Il y a quelques opérations atomiques disponibles pour effectuer des valeurs de champ de hachage numérique. C'est l'incrément atomique et la décrémentation sur les valeurs numériques en utilisant des commandes Hincrby et HincrbyFloat.

Le commandement des hexistes

La commande hexistes est utilisée pour vérifier si un champ donné est disponible dans le hachage particulier à une clé spécifiée. Cette commande a une complexité de temps constante qui est indiquée par Big O (1). Par conséquent, il est très efficace d'utiliser.

Syntaxe:

Hexistes key_name field_name

key_name : Ceci est la clé de niveau supérieur redis de ce hachage.

nom de domaine : Ceci est le nom du champ de hachage.

Valeur de retour de commande

Le commandement des hexistes renvoie une valeur entière de 1 ou 0 basée sur les résultats de l'évaluation des commandes. Il revient à 1 si le champ est disponible dans le hachage spécifié. Si le champ ou la clé de hachage n'est pas disponible, il revient à 0.

Utilisation pratique du commandement des hexistes

Créons un hachage avec un champ et vérifions comment fonctionne la commande. Nous pouvons utiliser la commande HSET pour créer un hachage avec une paire de valeurs de champ.

Utilisateur HSET: 1 nom Mike

Ensuite, nous vérifions si le hachage a été ajouté à la base de données Redis avec succès. La commande hgetall peut être utilisée pour récupérer toutes les paires de valeurs de champ pour une clé de hachage donnée.

Utilisateur de Hgetall: 1

Sortir:

Maintenant, vérifions le comportement du commandement des hexistes sur ce hachage:

Utilisateur des hexistes: 1 nom

Dans ce scénario, l'utilisateur: 1 est la clé de hachage. Le nom est le nom du champ de hachage. Étant donné que le champ de nom est disponible dans le hachage de l'utilisateur: 1, il doit revenir à 1.

Vérifions la commande avec un champ qui n'est pas disponible dans le hachage donné.

Utilisateur des hexistes: 1 âge

Dans ce cas, le champ d'âge n'est pas disponible dans l'utilisateur: 1 hachage. Par conséquent, la sortie est 0.

De cette façon, vous pouvez manipuler les champs de hachage pour leur existence à une clé de hachage donnée. Il s'agit d'une opération très économe en temps et est utile dans les manipulations d'objets dans les bases de données redis. Il faut un temps constant pour vérifier l'existence du 1er champ ou du 100e champ. Par conséquent, il est recommandé d'utiliser des hachages Redis chaque fois que vous avez besoin de stocker des objets ou des données simples.

Conclusion

Redis peut stocker différents types de structures de données pour une clé spécifique. Les hachages sont l'une des structures de données les plus populaires utilisées dans les bases de données redis. Les hachages peuvent être utilisés pour représenter et manipuler les objets et les données efficaces. Redis soutient plusieurs opérations de hachage. Les hexistes sont l'une des commandes populaires pour vérifier l'existence d'un champ de hachage donné dans une clé de hachage.