[REDIS] 레디 스 : 어떻게 키로 내 해시를 정렬 할 수 있습니다?
REDIS레디 스 : 어떻게 키로 내 해시를 정렬 할 수 있습니다?
내가 해시에 저장된 소식을 가지고 있다고 가정하자. 나는 다른 해시 (각 해시 한 소식을 나타냅니다)이 :
news:1
news:2
news:3
...
나는 키가 그렇게 명령으로 모든 키를 검색 할 :
KEYS news:*
키가 정렬되지 않습니다 문제 :
news:3
news:1
news:2
나는 올바른 순서로 키의 목록을 검색하고 싶습니다. 나는 확실하지 해시 구조라고 내가 필요 해요. 단, 레디 스 문서에 따라 :
해시 내 뉴스 객체를 저장하는 것은 좋은 아이디어가 될 것으로 보인다.
어떤 제안?
해결법
-
==============================
1.인덱스 문서로 레디 스 해시 생각하십시오.
인덱스 문서로 레디 스 해시 생각하십시오.
HSET news:1 title levy_breaks HSET news:1 type breaking_news HSET news:1 byline alphazero HSET news:1 date 04:25:2011 HSET news:1 content <the story> HSET news:2 ... ..
상기, 뉴스 : 1 '해쉬 필드'마지막 연관된 값 뒤에 '해시 키'이다.
즉, 당신이 단순히 '해시 키'를 정렬 할 것 같다 고 말했다.
(필드가 N하는) 뉴스 항목에 대한 모든 필드를 설정하는 MULTI / EXEC 구조를 사용하고, 마지막도 해시 키를 추가 - 예를 정렬 된 세트에서 it - 뉴스 항목을 선택합니다. 또는, 당신은 단지 목록에 추가하고 그 목록에 SORT 명령을 사용할 수 있습니다.
레디 스의 문서.
-
==============================
2.당신이 할 수있는 것은 존재 뉴스 항목 집합 또는 목록을 저장합니다. 새 뉴스 항목을 만들 때 예를 들어,의 뉴스 가정 해 봅시다 : 네, 당신은, 세트에 인덱스 4를 추가 목록을 말할 수 : 소식, 지금 가지고있는 것이다 [1, 2, 3, 4].
당신이 할 수있는 것은 존재 뉴스 항목 집합 또는 목록을 저장합니다. 새 뉴스 항목을 만들 때 예를 들어,의 뉴스 가정 해 봅시다 : 네, 당신은, 세트에 인덱스 4를 추가 목록을 말할 수 : 소식, 지금 가지고있는 것이다 [1, 2, 3, 4].
이제 뉴스 해시 구조가 날짜, 저자 가정합니다. 장소에두고 다음을 실행할 수 있습니다 :
sort list:news get *->some_value_a ->*->some_value_b
from https://stackoverflow.com/questions/5780365/redis-how-can-i-sort-my-hash-by-keys by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] servicestack.redis 대안 [폐쇄] (0) | 2020.01.06 |
---|---|
[REDIS] 어떻게하면 100 % CPU 레디 스의 성능을 향상시키기 위해? 샤딩? 가장 빠른 닷넷 클라이언트? (0) | 2020.01.06 |
[REDIS] 레디 스 필드의 값을 기준으로 해시를 찾는 (0) | 2020.01.06 |
[REDIS] 어떻게 여러 서버에 socket.io 전송 메시지는 무엇입니까? (0) | 2020.01.06 |
[REDIS] 읽기 작업과 레디 스에서의 트랜잭션 (0) | 2020.01.05 |