>데이터 베이스 >Redis >Redis 데이터베이스에 데이터 유형이 있습니까? 어떤 유형

Redis 데이터베이스에 데이터 유형이 있습니까? 어떤 유형

尚
원래의
2019-07-01 15:16:342751검색

Redis 데이터베이스에 데이터 유형이 있습니까? 어떤 유형

Redis는 문자열(string), 해시(hash), 목록(list), 집합(set) 및 zset(sorted set:ordered set)의 다섯 가지 데이터 유형을 지원합니다.

소개:

1. 문자열:

string은 Redis의 가장 기본적인 유형입니다. 하나의 키가 하나의 값에 해당합니다.

문자열 유형은 바이너리 안전합니다. 이는 redis 문자열에 모든 데이터가 포함될 수 있음을 의미합니다. 예를 들어 jpg 이미지 또는 직렬화된 개체입니다.

문자열 유형은 Redis의 가장 기본적인 데이터 유형이며 문자열 유형 값은 최대 512MB까지 저장할 수 있습니다.

예:

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

2, hash

Redis 해시는 키-값(키=>값) 쌍의 모음입니다.

Redis 해시는 문자열 형식의 필드와 값을 매핑하는 테이블입니다. 특히 객체를 저장하는 데 적합합니다.

예:

redis 127.0.0.1:6379> DEL runoobredis 127.0.0.1:6379> HMSET myhash field1 "Hello" field2 "World"
"OK"
redis 127.0.0.1:6379> HGET myhash field1
"Hello"
redis 127.0.0.1:6379> HGET myhash field2
"World"

3, list

Redis 목록은 삽입 순서로 정렬된 간단한 문자열 목록입니다. 목록의 머리(왼쪽) 또는 꼬리(오른쪽)에 요소를 추가할 수 있습니다.

예:

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

목록은 최대 232 - 1개의 요소를 저장할 수 있습니다(4294967295, 각 목록은 40억 개 이상을 저장할 수 있음).

4. Set(세트)

Redis의 Set은 문자열 형식의 정렬되지 않은 모음입니다.

세트는 해시 테이블을 통해 구현되므로 추가, 삭제, 검색의 복잡성은 O(1)입니다.

sadd 명령

은 키에 해당하는 집합 집합에 문자열 요소를 추가합니다. 성공하면 1을 반환합니다. 해당 요소가 집합에 이미 있으면 0을 반환합니다. 키에 해당하는 집합이 없으면 반환합니다. 오류.

sadd key member

예:

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> sadd runoob redis
(integer) 1
redis 127.0.0.1:6379> sadd runoob mongodb
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 1
redis 127.0.0.1:6379> sadd runoob rabitmq
(integer) 0
redis 127.0.0.1:6379> smembers runoob
1) "redis"
2) "rabitmq"
3) "mongodb"

5.zset (sorted set: ordered set)

Redis zset도 set과 마찬가지로 문자열 형식 요소의 모음이며 중복 멤버는 허용되지 않습니다.

차이점은 각 요소가 이중 유형 점수와 연관되어 있다는 것입니다. Redis는 점수를 사용하여 컬렉션의 구성원을 작은 것부터 큰 것까지 정렬합니다.

zset의 멤버는 고유하지만 점수가 반복될 수 있습니다.

zadd 명령

은 컬렉션에 요소를 추가합니다. 요소가 컬렉션에 있으면 해당 점수가 업데이트됩니다

예:

redis 127.0.0.1:6379> DEL runoob
redis 127.0.0.1:6379> zadd runoob 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 mongodb
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 1
redis 127.0.0.1:6379> zadd runoob 0 rabitmq
(integer) 0
redis 127.0.0.1:6379> > ZRANGEBYSCORE runoob 0 1000
1) "mongodb"
2) "rabitmq"
3) "redis"

Redis 관련 지식을 더 보려면 Redis 사용 튜토리얼 열을 방문하세요!

위 내용은 Redis 데이터베이스에 데이터 유형이 있습니까? 어떤 유형의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.