🧱 2.1.2 보조 자료형과 기능
Redis는 대표적으로 다섯 가지 기본 자료형(String, List, Hash, Set, Sorted Set)을 제공하지만,
그 외에도 보조 자료형과 기능을 통해 더 복잡한 데이터 구조를 다룰 수 있습니다.
⚙️ 대표 보조 자료형 및 기능
기능명 설명 사용 예시
Pub/Sub 메시지 발행-구독 기능으로 실시간 알림 시스템 구성 가능 채팅, 알림 시스템
HyperLogLog 대규모 데이터에서 중복되지 않는 원소 개수를 근사치로 계산 고유 방문자 수 추정
Redis Stream 이벤트 로그나 메시지 큐를 다루는 고급형 자료구조 로그 수집, 실시간 데이터 파이프라인
🧩 보조 자료형의 예시
Redis는 단순한 키-값 저장소를 넘어서 다양한 활용을 지원합니다.
예를 들어, 자바스크립트 객체처럼 필드-값 구조를 저장하는 Hash,
순서가 있는 데이터 처리를 위한 Sorted Set 등은
복잡한 애플리케이션 데이터 구조를 단순하게 구현할 수 있게 합니다.
📎 Redis 명령어는 Commands 페이지
에서 각 자료형별로 확인할 수 있습니다.
💡 보조 자료형의 장점
데이터 모델링 유연성
다양한 구조를 지원하여 서비스 요구사항에 따라 최적의 형태로 데이터 저장 가능
복잡한 연산 처리 지원
Pub/Sub, Stream 등으로 비동기 이벤트 처리 및 실시간 데이터 전송 가능
통계적 기능 포함
HyperLogLog 등은 대용량 데이터의 근사 연산을 매우 적은 메모리로 수행 가능
🧠 2.1.3 레디스의 폭넓은 데이터 모델 표현성
Redis는 단순한 Key-Value 저장소(KVS) 에 머무르지 않습니다.
복잡한 데이터 모델도 유연하게 표현할 수 있는 다양한 자료형 + 구조 조합을 제공합니다.
📦 Redis의 유연한 데이터 모델
단순히 문자열이나 리스트뿐 아니라,
해시(Hash), 정렬된 집합(Sorted Set), 스트림(Stream) 등을 이용해
관계형 데이터처럼 다양한 데이터 간 연관성을 표현할 수 있습니다.
예를 들어,
사용자 정보: Hash
실시간 순위: Sorted Set
채팅 메시지 스트림: Stream
이벤트 로그 카운트: HyperLogLog
로 각각 관리 가능
⚖️ Redis는 단순한 KVS가 아니다
KVS(Key-Value Store)는 하나의 키에 하나의 값만 저장할 수 있는 구조지만,
Redis는 한 키 안에서 다양한 자료구조를 내장할 수 있습니다.
이로 인해 Redis는 경량 데이터베이스처럼 활용할 수 있으며,
복잡한 애플리케이션에서도 높은 처리 효율을 발휘합니다.
💾 관계형 DB와의 차이
비교 항목 RDBMS Redis
데이터 모델 테이블 기반 (관계형) 다양한 구조 기반 (비관계형)
확장성 수직 확장 중심 수평 확장 중심 (Cluster 지원)
데이터 저장 디스크 메모리 중심
데이터 표현 고정된 스키마 동적 구조 (Key-Value + 자료형)
🔎 정리:
Redis는 단순 캐시가 아니라, 데이터 표현 모델이 유연한 인메모리 데이터 플랫폼이다.
복잡한 비즈니스 로직에서도 빠르고 간결하게 데이터 모델링이 가능하다.