Latest web development tutorials

Les types de données Redis

Redis prend en charge cinq types de données: string (chaîne), hachage (hash), la liste (liste), set (set) et Zset (set triés: ensemble ordonné).


String (String)

Redis chaîne est le type le plus basique, vous pouvez comprendre exactement le même type comme Memcached, une clé correspondant à une valeur.

type de chaîne est sûr binaire. Signification Redis la chaîne peut contenir des données. jpg image ou une séquence d'objets tels que.

Redis type de chaîne est le type de données de base, une clé peut être stockée 512MB maximale.

Exemples

redis 127.0.0.1:6379> SET name "w3big"
OK
redis 127.0.0.1:6379> GET name
"w3big"

Dans l'exemple ci - dessus , nous utilisons Redis des commandesSET et GET.Key est le nom, la w3big de valeur correspondante.

Remarque: Une clé peut stocker 512 Mo au maximum.


Hash (hash)

Redis hash est une collection de paires clé-valeur.

Redis hash est un type de champ et la valeur table de mappage chaîne, hachage est particulièrement adapté pour le stockage d'objets.

Exemples

127.0.0.1:6379> HMSET user:1 username w3big password w3big points 200
OK
127.0.0.1:6379> HGETALL user:1
1) "username"
2) "w3big"
3) "password"
4) "w3big"
5) "points"
6) "200"

Des exemples des types de données ci-dessus stockées dans le hachage de l'objet utilisateur qui contient des scripts utilisateur. Des exemples que nous utilisons Redis HMSET,commande HGETALL, l' utilisateur: 1 clé.

Chaque hachage peut stocker des paires clé-valeur 232-1 (4000000000).


Liste (liste)

Liste Redis est une simple liste de chaînes triées ordre d'insertion. Vous pouvez ajouter un élément à la tête de la liste (à gauche) ou à l'arrière (à droite).

Exemples

redis 127.0.0.1:6379> lpush w3big redis
(integer) 1
redis 127.0.0.1:6379> lpush w3big mongodb
(integer) 2
redis 127.0.0.1:6379> lpush w3big rabitmq
(integer) 3
redis 127.0.0.1:6379> lrange w3big 0 10
1) "rabitmq"
2) "mongodb"
3) "redis"
redis 127.0.0.1:6379>

Liste peut stocker jusqu'à 232 à -1 élément (4,294,967,295 chaque liste peut stocker plus de 4 milliards).


Set (collection)

Redis est une collection non ordonnée de Set type chaîne.

Défini par la table de hachage pour atteindre, il faut donc ajouter, supprimer, rechercher la complexité est O (1).

commande sadd

Ajout d'un élément de chaîne, la remise des clés de jeu correspondant, retour réussi 1 retour 0 si l'élément déjà dans la collection, la touche correspondant à l'ensemble n'existe pas une erreur est renvoyée.

sadd key member

Exemples

redis 127.0.0.1:6379> sadd w3big redis
(integer) 1
redis 127.0.0.1:6379> sadd w3big mongodb
(integer) 1
redis 127.0.0.1:6379> sadd w3big rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd w3big rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers w3big

1) "rabitmq"
2) "mongodb"
3) "redis"

Remarque: L'exemple ci - dessus rabitmq ajouté deux fois, mais repose sur un ensemble unique d'éléments dans le deuxième élément d'insertion est ignoré.

Définissez le nombre maximum de membres de 232 à -1 (4294967295 Chaque ensemble peut stocker plus de 40 millions de membres).


Zset (set triés: une collection ordonnée)

Redis Zset et est défini comme un ensemble d'éléments de type chaîne, et ne permet pas aux membres en double.

La différence est que sont associés à chaque type d'élément d'un double score. Il est par scores pour redis petite à grande pour des membres de la collection.

membre Zset est unique, mais le score (score) elle peut être répétée.

commande Zadd

Ajouter un élément à la collection, l'élément est présent dans la collection met à jour la partition correspondante

zadd key score member 

Exemples

redis 127.0.0.1:6379> zadd w3big 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd w3big 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE w3big 0 1000

1) "redis"
2) "mongodb"
3) "rabitmq"