redis 집합 유형동력 노드 자바 대학 정리

5500 단어 redis집합 유형
레 디 스 5 대 유형 중 네 번 째 유형 을 살 펴 보 겠 습 니 다.'집합 유형'은 집합 유형 이 재 미 있 습 니 다.먼저 redis 매 뉴 얼 을 보 겠 습 니 다.다음 과 같 습 니 다.

위 는 redis 의 set 타 입 에서 사용 되 는 모든 방법 입 니까?아니면 옛말 입 니까?자주 사용 하 는 방법 은 바로 네 가지(CURD)입 니 다.
상용 방법
1. SAdd
이 방법 은 집합 에 데 이 터 를 추가 하 는 것 임 에 틀림없다.예 를 들 어 아래 와 같이 나 는 fruits 집합 에 좋아 하 는 과일 을 추가 하 는 것 이다.

127.0.0.1:6379> sadd fruits apple
(integer) 1
127.0.0.1:6379> sadd fruits banana
(integer) 1
127.0.0.1:6379> smembers fruits
1) "banana"
2) "apple"
127.0.0.1:6379>

위 에 있 는 이 sadd 도 보 았 습 니 다.저 는 집합 에 두 개의 요 소 를 성공 적 으로 추 가 했 습 니 다.지금 은 이렇게 간단 한 추가 에 만족 하지 않 을 수도 있 습 니 다.set 라 는 집합 이 redis 밑 에 무엇 을 사용 하여 이 루어 졌 는 지 알 고 싶 을 수도 있 습 니 다.object encoding 으로 확인 하면 알 수 있 습 니 다.

127.0.0.1:6379> object encoding fruits
"hashtable"
127.0.0.1:6379>
보 셨 죠?hashtable 입 니 다.바 텀 코드 를 보 세 요.

dictAdd 방법 을 보 았 습 니까?그 중 세 번 째 인 자 는 바로 Null 입 니 다.*val 형 삼 에 대응 하여 dictAdd 방법의 정 의 를 보 여 드 리 겠 습 니 다. 

2. SPOP,SMEMBERS
    요소 가 들 어 왔 으 니 안 나 올 수 는 없 잖 아 요.여기 첫 번 째 SPOP:집합 에 있 는 무 작위 요 소 를 제거 하고 되 돌려 줍 니 다.

방금 아무 말 이나 끼어 들 었 어 요.다음은 SAdd 를 계속 하고 SPop 을 나 오 겠 습 니 다.

127.0.0.1:6379> sadd fruits pear
(integer) 1
127.0.0.1:6379> sadd fruits grape
(integer) 1
127.0.0.1:6379> sadd fruits chestnut
(integer) 1
127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
4) "apple"
5) "chestnut"
127.0.0.1:6379> spop fruits
"apple"
127.0.0.1:6379> spop fruits
"chestnut"
127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
127.0.0.1:6379>

이 방법 은 확실히 매우 좋다.적어도 그것 은 원자 적 인 조작 이다.만약 내 가 스스로 실현 하려 면 적어도 10 줄 정도 의 코드 가 필요 하 다. 
3. SREM
    CURD 라 고 했 으 니 D 가 빠 질 수 있 습 니까?그 기능 정 의 는 집합 key 의 하나 이상 의 member 요 소 를 제거 하면 존재 하지 않 는 member 요 소 는 무시 된다 는 것 입 니 다.
다음은 제 가 마음대로 예 를 들 어 fruits 의 pear 를 삭제 하 겠 습 니 다.

127.0.0.1:6379> smembers fruits
1) "grape"
2) "pear"
3) "banana"
127.0.0.1:6379> srem fruits pear
(integer) 1
127.0.0.1:6379> smembers fruits
1) "grape"
2) "banana"
127.0.0.1:6379>

좋은 웹페이지 즐겨찾기