Strings
문자열은 가장 기본적인 종류의 Redis 값입니다. Redis 문자열은 바이너리에 안전합니다. 즉, Redis 문자열에는 JPEG 이미지 또는 직렬화 된 Ruby 개체와 같은 모든 종류의 데이터가 포함될 수 있습니다.
문자열 값의 길이는 최대 512MB입니다.
Redis에서 문자열을 사용하여 여러 가지 흥미로운 작업을 수행 할 수 있습니다. 예를 들면 다음과 같습니다.
자세한 내용은 사용 가능한 모든 문자열 명령을 확인하거나 Redis 데이터 유형 소개를 읽어보세요.
Lists
Redis 목록은 단순히 삽입 순서로 정렬 된 문자열 목록입니다. 목록의 머리 (왼쪽) 또는 꼬리 (오른쪽)에 새 요소를 푸시하는 Redis 목록에 요소를 추가 할 수 있습니다.
LPUSH 명령은 머리에 새 요소를 삽입하고 RPUSH는 꼬리에 새 요소를 삽입합니다. 이 작업 중 하나가 빈 키에 대해 수행되면 새 목록이 생성됩니다. 마찬가지로 목록 작업이 목록을 비우면 키 공간에서 키가 제거됩니다. 존재하지 않는 키를 인자로 사용하여 호출하면 모든 목록 명령이 빈 목록으로 호출 된 것과 똑같이 동작하기 때문에 매우 편리한 의미 체계입니다.
목록 작업 및 결과 목록의 몇 가지 예 :
LPUSH mylist a # now the list is "a" LPUSH mylist b # now the list is "b","a" RPUSH mylist c # now the list is "b","a","c" (RPUSH was used this time)
목록의 최대 길이는 232-1 개 요소입니다 (4294967295, 목록 당 40 억 개 이상의 요소).
시간 복잡성의 관점에서 볼 때 Redis 목록의 주요 기능은 수백만 개의 항목이 삽입 된 경우에도 머리와 꼬리 근처에 있는 요소의 지속적인 시간 삽입 및 삭제를 지원하는 것입니다. 요소에 액세스하는 것은 목록의 극단 근처에서 매우 빠르지만 O (N) 작업이므로 매우 큰 목록의 중간에 액세스 하려고 하면 느립니다.
Redis 목록으로 많은 흥미로운 작업을 수행 할 수 있습니다. 예를 들면 다음과 같습니다.
자세한 내용은 목록에서 작동하는 사용 가능한 모든 명령을 확인하거나 Redis 데이터 유형 소개를 읽어보세요.
Sets
Redis 세트는 정렬되지 않은 문자열 모음입니다. O (1)에서 구성원의 존재 여부를 추가, 제거 및 테스트 할 수 있습니다 (Set에 포함 된 요소 수에 관계없이 일정 시간).
Redis 세트에는 반복 멤버를 허용하지 않는 바람직한 속성이 있습니다. 동일한 요소를 여러 번 추가하면 이 요소의 단일 사본이 있는 세트가 생성됩니다. 실제로 이것은 구성원을 추가 할 때 존재 여부를 확인한 다음 작업을 추가 할 필요가 없음을 의미합니다.
Redis 세트에 대한 매우 흥미로운 점은 기존 세트에서 시작하여 세트를 계산하는 여러 서버 측 명령을 지원하므로 매우 짧은 시간에 세트의 유니온, 교차, 차이를 수행 할 수 있다는 것입니다.
한 세트의 최대 구성원 수는 232-1 개 (4294967295, 세트당 40 억 개 이상의 구성원)입니다.
Redis 세트를 사용하여 많은 흥미로운 작업을 수행 할 수 있습니다. 예를 들면 다음과 같습니다.
평소처럼 자세한 내용은 Set 명령의 전체 목록을 확인하거나 Redis 데이터 유형 소개를 읽어보세요.
Hashes
Redis Hashes는 문자열 필드와 문자열 값 사이의 맵이므로 객체를 나타내는 데 완벽한 데이터 유형입니다 (예 : 이름, 성, 나이 등과 같은 여러 필드가 있는 사용자).
HMSET user:1000 username antirez password P1pp0 age 34 HGETALL user:1000 HSET user:1000 password 12345 HGETALL user:1000
몇 개의 필드가 있는 해시는 공간을 거의 차지하지 않는 방식으로 저장되므로 작은 Redis 인스턴스에 수백만 개의 개체를 저장할 수 있습니다.
해시는 주로 객체를 나타내는 데 사용되지만 많은 요소를 저장할 수 있으므로 다른 많은 작업에도 해시를 사용할 수 있습니다.
모든 해시는 최대 232-1 개의 필드 값 쌍 (40 억 개 이상)을 저장할 수 있습니다.
자세한 내용은 Hash 명령의 전체 목록을 확인하거나 Redis 데이터 유형 소개를 읽어보세요.
Sorted sets
Redis Sorted Sets는 Redis Sets와 유사하게 반복되지 않는 문자열 모음입니다. 차이점은 정렬 된 집합의 모든 구성원이 가장 작은 점수에서 가장 큰 점수로 정렬 된 집합을 정렬하는 데 사용되는 점수와 관련되어 있다는 것입니다. 회원은 고유하지만 점수는 반복 될 수 있습니다.
정렬 된 세트를 사용하면 매우 빠르게 요소를 추가, 제거 또는 업데이트 할 수 있습니다 (요소 수의 로그에 비례하는 시간에). 요소는 순서대로 취해지고 나중에 순서가 지정되지 않기 때문에 점수 또는 순위 (위치)별로 범위를 매우 빠르게 얻을 수도 있습니다. 정렬 된 집합의 중간에 액세스하는 것도 매우 빠르기 때문에 정렬 된 집합을 반복되지 않는 요소의 스마트 목록으로 사용하여 필요한 모든 요소에 빠르게 액세스 할 수 있습니다. 순서대로 요소, 빠른 존재 테스트, 중간에 있는 요소에 대한 빠른 액세스 !
간단히 말해, 정렬 된 세트를 사용하면 다른 종류의 데이터베이스에서 모델링 하기 정말 어려운 뛰어난 성능으로 많은 작업을 수행 할 수 있습니다.
정렬 된 세트를 사용하여 다음을 수행 할 수 있습니다.
정렬 된 집합은 아마도 가장 진보 된 Redis 데이터 유형일 것이므로 정렬 된 집합 명령의 전체 목록을 확인하여 Redis로 무엇을 할 수 있는지 알아보십시오! 또한 Redis 데이터 유형에 대한 소개를 읽을 수 있습니다.
Bitmaps and HyperLogLogs
Redis는 또한 실제로 String 기본 유형을 기반으로 하지만 고유 한 의미를 갖는 데이터 유형 인 Bitmap 및 HyperLogLog를 지원합니다.
이러한 유형에 대한 정보는 Redis 데이터 유형 소개를 참조하십시오.
https://redis.io/topics/data-types
등록된 댓글이 없습니다.