Redis

해피데빙·2022년 9월 27일
0
  • 데이터베이스, 캐시, 메시지 브로커 및 대기열로 사용하는 빠른 오픈 소스 인 메모리 데이터 스토어

Remote Dictionary Server
빠른 오픈 소시 인 메모리 키 값 데이터 스토어
1밀리초 미만의 응답 시간 제공
실시간 애플리케이션을 위해 초당 수백만 건의 요청을 지원할 수 있다
가장 인기 있는 오픈 소스 엔진 주 앟나
캐싱, 세션 관리, 게임, 리더보드, 실시간 분석, 지형 공간, 라이드 헤일링, 채팅/메시징, 미디어 스트리밍 및 게시/구독 앱에서 주로 사용

캐싱

  • 일시적인 특징이 있는 데이터 하위 집합을 저장하는 고속 데이터 스토리지 계층

  • 이후 해당 데이터에 대한 요청이 있을 경우 데이터의 기본 스토리지 위치에 엑세스할 때보다 더 빠르게 요청을 처리할 수 있다

  • 빠르게 액세스할 수 있는 하드웨어에 저장, 소프트웨어 구성 요소와 함께 사용될 수도 있다

  • 더 느린 기본 스토리지 계층에 엑세스해야 하는 필요를 줄여서 데이터 검색 성능을 높인다

  • 데이터 검색 성능이 향상되고 비용 절감

  • 데이터베이스 및 디스크 기반 하드웨어로 동일 규모 지원 시 추가 리소스 필요

  • 비용 상승하면서 여전히 인 메모리 캐시에서 제공하는 짧은 지연 시간 성능은 달성할 수 없다

  • open source
  • in-memory
    : data structure server with support for strings, hashes, lists, sets, sorted sets, streams and more
  • data store
  • used as db, cache, streaming engine, msg broker

appending to a string, increment the value in a hash, push el to a list, computing set intersection, union and difference
getting the member with highest ranking in a sorted set

cf. in-memory database

  • 컴퓨터의 주 메모리에 모든 조직 또는 개인의 데이터를 저장한다
  • 더 빠른 대신 휘발성

[장점]

  • 인메모리 데이터베이스에 대한 데이터 분석 : 보조 기억 장치를 사용하는 기존 데이터베이스에 비해 빠르다 ex. 하드 디스크
  • 컴퓨터의 중앙 처리 장치(CPU)는 주 메모리에 저장된 데이터에만 직접 접속 가능
  • 그러므로 컴퓨터는 보조 기억 장치의 데이터보다 훨씬 바르게 주 메모리의 데이터를 읽고 쓸 수 있다

  • 고속 데이터베이스 조작을 필요로 하는 애플리케이션에 인메모리 데이터베이스 사용
    ex. 실시간 광고 스폿 입찰
  • 웹 페이지가 로드되는 동안 밀리초 이내에 진행
  • 사물 인터넷의 출현과 클라우드 기반 솔루션의 성장에 따라 실시간 데이터 처리 필요
  • 매초 생성되는 데이터를 실시간으로 분석하는 것은 결정적인 문제
  • 조직은 실시간 데이터를 처리하기 위해 고성능 데이터베이스 솔루션 필요
  • 인메모리 데이터베이스는 또한 조직이 데이터베이스 연산 속도를 높여 생산성 향상시키는데 도움
    빅 데이터의 이점을 활용하는 데도 도움이 된다

조직에서 다음 중 하나가 필요한 경우 인메모리 데이터베이스 적용을 고려

  • 빅데이터 실시간 이점 활용
  • 정기적 데이터 수집, 빠른 액세스 필요
  • 조직의 경우 데이터 지속성은 큰 문제가 아님

=> 속도와 정기적 데이터, 휘발성이어도 됨

인메모리 데이터베이스와 디스크 기반 데이터베이스 비교

  • 인메모리 데이터베이스 : 더 빠른 읽기/쓰기. 기존 db에서 데이터베이스 연산을 진행하려면 입/출력 작업을 포합하는 디스크에서 쓰기/읽기 필요. 이 추가 프로세스로 하여 디스크 기반 데이터베이스의 속도 저하
  • 디스크 : 인메모리에 비해 영구적. 인메모리는 휘발성. 인메모리는 다양한 기술 사용해서 데이터 변동성 문제 극복.
  • supports asynchronous replication
  • fast non-blocking synchronization and auto-reconnection with partial resynchronization on net split
profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글