Учебники

Redis — типы данных

Redis поддерживает 5 типов данных.

Струны

Строка Redis — это последовательность байтов. Строки в Redis являются бинарно-безопасными, то есть имеют известную длину, не определяемую никакими специальными завершающими символами. Таким образом, вы можете хранить что угодно до 512 мегабайт в одной строке.

пример

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

В приведенном выше примере SET и GET являются командами Redis, name — это ключ, используемый в Redis, а tutorialspoint — это строковое значение, которое хранится в Redis.

Примечание. Длина строки может быть не более 512 мегабайт.

Хэш

Хэш Redis — это коллекция пар ключ-значение. Redis Хеши — это карты между строковыми полями и строковыми значениями. Следовательно, они используются для представления объектов.

пример

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"

В приведенном выше примере хеш-тип данных используется для хранения объекта пользователя, который содержит основную информацию о пользователе. Здесь HMSET, HGETALL — команды для Redis, а user — 1 — это ключ.

Каждый хэш может хранить до 2 32 — 1 пары значение поля (более 4 миллиардов).

Списки

Списки Redis — это просто списки строк, отсортированные по порядку вставки. Вы можете добавить элементы в список Redis на голове или на хвосте.

пример

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"

Максимальная длина списка — 2 32 — 1 элемента (4294967295, более 4 миллиардов элементов в списке).

наборы

Redis Sets — это неупорядоченная коллекция строк. В Redis вы можете добавлять, удалять и проверять наличие членов в O (1) времени сложности.

пример

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" 

Примечание. В приведенном выше примере rabitmq добавляется дважды, однако из-за уникального свойства набора он добавляется только один раз.

Максимальное количество участников в наборе составляет 2 32 — 1 (4294967295, более 4 миллиардов членов в наборе).

Сортированные Наборы

Сортированные наборы Redis похожи на наборы Redis, неповторяющиеся наборы строк. Разница в том, что каждый член отсортированного набора связан со счетом, который используется для того, чтобы взять упорядоченный набор из отсортированного набора от наименьшего к наибольшему количеству баллов. Хотя участники уникальны, оценки могут повторяться.