Redis - Types de données
Redis prend en charge 5 types de types de données.
Cordes
La chaîne Redis est une séquence d'octets. Les chaînes dans Redis sont binaires sûres, ce qui signifie qu'elles ont une longueur connue non déterminée par des caractères de fin spéciaux. Ainsi, vous pouvez stocker jusqu'à 512 mégaoctets dans une chaîne.
Exemple
redis 127.0.0.1:6379> SET name "tutorialspoint"
OK
redis 127.0.0.1:6379> GET name
"tutorialspoint"
Dans l'exemple ci-dessus, SET et GET sont des commandes Redis, name est la clé utilisée dans Redis et tutorialspoint est la valeur de chaîne stockée dans Redis.
Note - Une valeur de chaîne peut avoir une longueur maximale de 512 mégaoctets.
Hashs
Un hachage Redis est une collection de paires valeur / clé. Les hachages Redis sont des mappages entre les champs de chaîne et les valeurs de chaîne. Par conséquent, ils sont utilisés pour représenter des objets.
Exemple
redis 127.0.0.1:6379> HMSET user:1 username tutorialspoint password
tutorialspoint points 200
OK
redis 127.0.0.1:6379> HGETALL user:1
1) "username"
2) "tutorialspoint"
3) "password"
4) "tutorialspoint"
5) "points"
6) "200"
Dans l'exemple ci-dessus, le type de données de hachage est utilisé pour stocker l'objet de l'utilisateur qui contient des informations de base sur l'utilisateur. IciHMSET, HGETALL sont des commandes pour Redis, tandis que user − 1 C'est la clé.
Chaque hachage peut stocker jusqu'à 2 32 - 1 paires de valeurs de champ (plus de 4 milliards).
Listes
Les listes Redis sont simplement des listes de chaînes, triées par ordre d'insertion. Vous pouvez ajouter des éléments à une liste Redis sur la tête ou sur la queue.
Exemple
redis 127.0.0.1:6379> lpush tutoriallist redis
(integer) 1
redis 127.0.0.1:6379> lpush tutoriallist mongodb
(integer) 2
redis 127.0.0.1:6379> lpush tutoriallist rabitmq
(integer) 3
redis 127.0.0.1:6379> lrange tutoriallist 0 10
1) "rabitmq"
2) "mongodb"
3) "redis"
La longueur maximale d'une liste est de 2 32 - 1 éléments (4294967295, plus de 4 milliards d'éléments par liste).
Ensembles
Les ensembles Redis sont une collection non ordonnée de chaînes. Dans Redis, vous pouvez ajouter, supprimer et tester l'existence de membres en complexité temporelle O (1).
Exemple
redis 127.0.0.1:6379> sadd tutoriallist redis
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist mongodb
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd tutoriallist rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers tutoriallist
1) "rabitmq"
2) "mongodb"
3) "redis"
Note - Dans l'exemple ci-dessus, rabitmq est ajouté deux fois, mais en raison de la propriété unique de l'ensemble, il n'est ajouté qu'une seule fois.
Le nombre maximum de membres dans un ensemble est de 2 32 - 1 (4294967295, plus de 4 milliards de membres par ensemble).
Ensembles triés
Les ensembles triés Redis sont similaires aux ensembles Redis, des collections non répétitives de chaînes. La différence est que chaque membre d'un ensemble trié est associé à un score, qui est utilisé pour prendre l'ensemble trié ordonné, du plus petit au plus grand score. Bien que les membres soient uniques, les scores peuvent être répétés.
Exemple
redis 127.0.0.1:6379> zadd tutoriallist 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd tutoriallist 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE tutoriallist 0 1000
1) "redis"
2) "mongodb"
3) "rabitmq"