2023. 3. 20. 21:09ㆍit
0. 서론
Redis의 스트림(Stream) 데이터 구조와 XRANGE 명령어는 대규모 IoT 데이터 처리에 적합한 솔루션 중 하나이다. 이는 시간에 따라 시리즈로 생성되는 IoT 데이터를 저장하고 검색하기에 최적화되어 있으며, 대용량 데이터 처리 및 분석에 최적화되어 있다. 또한 Redis는 인 메모리 데이터베이스로 분류되어 있어 디스크 I/O와 같은 병목 현상이 발생하지 않으므로 데이터 업데이트 및 검색 성능을 높일 수 있다.
1. 데이터 추가하기(XADD)
다음 명령어를 사용하여 iot 데이터를 추가할 수 있습니다.
XADD iot_data_stream * tagA 120 |
위 명령어는 iot_data_stream이라는 이름의 Redis 스트림(Stream)에 tagA라는 이름의 센서에 해당하는 값을 120으로 추가합니다. *는 자동으로 유일한 ID를 생성하는 Redis 스트림(Stream)의 특수 문자입니다.
2. 데이터 삭제하기(XDEL)
다음 명령어를 사용하여 iot 데이터를 삭제할 수 있습니다.
XDEL iot_data_stream 1 |
위 명령어는 iot_data_stream이라는 이름의 Redis 스트림(Stream)에서 ID가 1인 데이터를 삭제합니다.
3.범위 조회하기(XRANGE)
다음 명령어를 사용하여 iot 데이터를 범위로 조회할 수 있습니다.
XRANGE iot_data_stream - + |
위 명령어는 iot_data_stream이라는 이름의 Redis 스트림(Stream)에서 처음부터 끝까지의 모든 데이터를 조회합니다. -는 가장 오래된 데이터를 나타내는 특수 문자이고, +는 가장 최근 데이터를 나타내는 특수 문자입니다.
위 예시를 참고하여, 자신이 가진 iot 데이터를 Redis 스트림(Stream) 데이터 구조에 추가, 삭제하고, XRANGE 명령어로 범위를 조회해 보시면 됩니다.
4. 데이터 건수(XLEN)
위 명령어는 iot_data_stream이라는 이름의 Redis 스트림(Stream)에 저장된 전체 데이터 건수를 반환합니다.
XLEN iot_data_stream |
COUNT와 *와 같은 SQL 문법과는 다르게, Redis의 XLEN 명령어에서는 *와 같은 와일드카드 문자를 사용할 수 없습니다. 즉, Redis에서는 모든 데이터 건수를 조회하는 데에는 XLEN 명령어만 사용할 수 있습니다.
'it' 카테고리의 다른 글
Python 웹(frontend) 만들기 ( with pynecone ) (0) | 2023.03.23 |
---|---|
Redis 데이터 백업, 디스크 저장 방법 ( AOF, RDB, 스냅샷 ) (0) | 2023.03.21 |
Kafka 로그(log) 관리 방법 및 설정 (0) | 2023.03.19 |
How to query Redis Sorted Set value range with Python (with zrange)? (0) | 2023.03.17 |
Polars Basic Syntax and Data Analysis Sample (with Scikit-learn) (0) | 2023.03.16 |