Redis - typy danych

Redis obsługuje 5 typów typów danych.

Smyczki

Ciąg Redis to sekwencja bajtów. Ciągi w Redis są bezpieczne binarnie, co oznacza, że ​​mają znaną długość, która nie jest określana przez żadne specjalne znaki kończące. W ten sposób w jednym ciągu można przechowywać wszystko o wielkości do 512 megabajtów.

Przykład

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

W powyższym przykładzie SET i GET to polecenia Redis, name jest kluczem używanym w Redis i tutorialspoint to wartość ciągu przechowywana w Redis.

Note - Wartość ciągu może mieć maksymalnie 512 megabajtów długości.

Hashe

Skrót Redis to zbiór par klucz-wartość. Hashe Redis to mapy między polami ciągów a wartościami ciągów. Dlatego są używane do reprezentowania obiektów.

Przykład

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"

W powyższym przykładzie typ danych hash służy do przechowywania obiektu użytkownika, który zawiera podstawowe informacje o użytkowniku. TutajHMSET, HGETALL to polecenia dla Redis, podczas gdy user − 1 jest kluczem.

Każdy mieszania można przechowywać do 2 32 - 1 par wartości pola (ponad 4 miliardy).

Listy

Listy Redis to po prostu listy ciągów, posortowane według kolejności wstawiania. Możesz dodawać elementy do listy Redis na głowie lub na ogonie.

Przykład

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"

Maksymalna długość listy to 2 32 - 1 elementów (4294967295, ponad 4 miliardy elementów na listę).

Zestawy

Zestawy Redis to nieuporządkowana kolekcja ciągów. W Redis możesz dodawać, usuwać i testować istnienie elementów członkowskich w złożoności czasowej O (1).

Przykład

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 - W powyższym przykładzie rabitmq jest dodawany dwukrotnie, jednak ze względu na unikalną właściwość zestawu jest dodawany tylko raz.

Maksymalna liczba członków w zestawie to 2 32 - 1 (4294967295, ponad 4 miliardy członków w zestawie).

Sortowane zestawy

Sortowane zestawy Redis są podobne do zestawów Redis, czyli nie powtarzających się kolekcji ciągów. Różnica polega na tym, że każdy element Posortowanego zestawu jest powiązany z oceną, która jest używana do sortowania uporządkowanego zestawu, od najmniejszego do największego wyniku. Chociaż członkowie są wyjątkowi, wyniki mogą się powtarzać.

Przykład

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"