[REDIS] 시간 - 기반 값을 정렬 레디 스 데이터 구조 설계
REDIS시간 - 기반 값을 정렬 레디 스 데이터 구조 설계
나는 데이터 스트림에 대한 몇 가지 분석을 수행하고, 레디 스 채널에 결과를 게시하고있다. 소비자는 이러한 채널을 구독하고 실시간 데이터 피드를 얻을. 모든 기록 데이터 분석 결과는 손실됩니다.
지금은 소비자가이 기록 데이터를 조회 할 수 있도록 (주로 시간) 레디 스에서 기록 데이터를 저장할 수있는 기능을 추가 할 수 있습니다. 분석 결과는 시간에 의해 분할되어 있기 때문에 무슨 일이 레디 스에 결과를 저장하는 좋은 디자인이 될 것인가?
해결법
-
==============================
1.사용은 정렬 된 세트 레디 스.
사용은 정렬 된 세트 레디 스.
정렬 된 세트는 그래서 귀하의 경우, 단지 밀리의 타임 스탬프를 사용, "점수"를 기반으로 데이터를 저장; 데이터가 자동으로 정렬이 시작 / 종료 날짜 범위를 사용하여 역사적 항목을 검색 할 수있게 될 것이며, 여기에 예입니다 ...
소트 세트에 항목을 추가 ...
zadd historical <timestamp> <dataValue>
일부 샘플 데이터 ..add ..
zadd historical 1 data1 zadd historical 2 data2 zadd historical 3 data3 zadd historical 4 data4 zadd historical 5 data5 zadd historical 6 data6 zadd historical 7 data7
시작 / 종료 범위를 사용하여 아이템들의 서브 세트를 ..retrieve ...
zrangebyscore historical 2 5
..보고...
1) "data2" 2) "data3" 3) "data4" 4) "data5"
당신이 마지막 날에 대한 모든 기록 항목을 검색 할 경우에 따라서, 귀하의 경우, 단지 이렇게 ...
zrangebyscore historical <currentTimeInMillis - 86400000> <currentTimeInMillis>
from https://stackoverflow.com/questions/17153154/redis-data-structure-design-for-sorting-time-based-values by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 패턴 매칭 키의 개수 (0) | 2020.01.12 |
---|---|
[REDIS] 페이 또는 레디 스 Pubsub (0) | 2020.01.12 |
[REDIS] NodeJs - 사용 레디 스, 명시 적으로 연결 - 레디 스 (0) | 2020.01.12 |
[REDIS] ulimit를 우분투 16.04 systemd 레디 스 문제 (0) | 2020.01.12 |
[REDIS] 어느 (있는 경우)의 형 NoSQL 데이터베이스의 쿼리 결과 세트에 * 변경 *의 스트림을 제공 할 수 있습니까? (0) | 2020.01.12 |