[구름톤 유니브 3기 스터디] Redis 입문/실전 (조회 성능 최적화편)

이재혁·2024년 11월 1일
0

Redis란? / Redis의 장점

Redis란?

레디스는 Remote Dictionary Server의 약자로서, “키-값” 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터베이스 관리 시스템(DBMS)이다.

First Word

Redis는 데이터 처리 속도가 엄청 빠른 NoSQL 데이터베이스다.

Redis의 장점

여러 특징 중 1가지만 확실하게 기억하자

레디스는 인메모리에 모든 데이터를 저장한다.
그래서 데이터의 처리 성능이 굉장히 빠르다.

MySQL과 같은 RDBMS의 데이터베이스는 대부분 디스크(DISK)에 데이터를 저장한다. 하지만 Redis는 메모리(RAM)에 데이터를 저장한다. 디스크보다 메모리에서의 데이터 처리속도가 월등하게 빠르다. 이 때문에 Redis의 데이터 처리 속도가 RDBMS에 비해 훨씬 빠르다.

Redis 주요 사용 사례

Redis의 사용 사례를 검색해보면 아주 다양하다.

  • 캐싱
  • 세션 관리
  • 실시간 분석 및 통계
  • 메시지 큐
  • 지리공간 인덱싱
  • 속도 제한
  • 실시간 채팅 및 메시징

레디스 설치 및 접속

image.png

레디스 기본 명령어 익히기

image.png

  • 모든 키 조회

image.png

  • 삭제

image.png

데이터 저장 시 만료시간(TTL) 정하기

레디스의 특성상 메모리 공간이 한정 되어 있기 때문에 모든 데이터를 레디스에 저장할 수 없다. 따라서 만료시간(TTL)을 활용해 자주 사용하는 데이터만 레디스에 저장해놓고 쓰는 식으로 활용한다.

  • TTL

image.png

💡

키가 없을 경우 -2 반환
ttl 설정이 안된 경우 ttl 조회 시 -1 반환

  • 모든 키 값 삭제
flushall

레디스에서 키 네이밍 컨벤션

현업에서 자주 사용하는 네이밍 컨벤션

회사마다 다르지만 딱 하나만 기억하자

콜론(:)을 활용해 계층적으로 의미를 구분해서 사용

예시를 살펴보면 바로 이해가 될 것이다.

  • users:100:profile : 사용자들(users) 중에서 PK가 100인 사용자의 프로필
  • products:123:details : 상품들 중에서

장점

  • 가독성: 데이터의 의미와 용도를 쉽게 파악할 수 있다
  • 일관성: 컨벤션을 따름으로써 코드의 일관성이 높아지고 유지보수가 쉬워진다
  • 검색 및 필터링 용이성: 패턴 매칭을 통해 특정 유형의 key를 쉽게 찾을 수 있다.
  • 확장성: 서로 다른 key와 이름이 겹쳐 충돌할 일이 적어진다.
profile
서비스기업 가고 싶은 대학생

0개의 댓글

관련 채용 정보