얼마전 윈도우에 Redis를 설치하는 내용을 공유한 적이 있었습니다. http://sarc.io/index.php/nosql/530-windows-redis-3-2-1

오늘은 Redis에 대한 더 많은 이야기를 해볼까 합니다.

 

Redis란?

Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and message broker. - redis.io

  • Memory DB
  • No sql - key:value 한 쌍 형태로 Data를 Memory에 저장
  • Memory에 저장된 내용을 지속시키기 위해 File로 Sync하는 기능 제공
  • Replication도 지원

최신 stable 버전 : Redis 3.2.1

 

Data Type

  • Strings
    -. 가장 기본적인 데이터 타입
    -. Redis의 Strings은 문자열 뿐만 아니라 이진 데이터도 저장 가능
    -. 한 Key에 데이터 최대 크기 512MB
  • Lists
    -. 배열
    -. 한 Key에 ?요소 개수 4,294,967,295 개(2^23 -1)
  • Sets
    -. 정렬되지 않은 집합 타입
    -. 한 Key에 중복 데이터 존재하지 않음.
    -. 장점 : 요소 추가, 제거 및 존재 체크 시 소모되는 시간이 set에 포함된 요소의
    수에 관계없이 일정함.
    -. 한 Key에 요소 개수 4,294,967,295 개(2^23 -1)
  • Hashes
    -. 암호화의 그 hash와 상관없음.
    -. 객체를 나타내는데 사용 가능한 데이터 타입
    -. lists와 비슷한 형태, "필드명", "필드값" 의 연속으로 이루어져있음.
  • Stored sets
    -. sets 의 각요소마다 score라는 실수 값을 가지고 있는 형태의 Type
    -. 요소들은 정렬된 형태로 보여지는데 이때 정렬하는 기준이 score (오름차순)
    -. sets 와 마찬가지로 동일한 key 에서 각 요소들의 값은 유일, but, score 값은 중복될 수 있음.
    -. 요소의 추가, 제거, 업데이트는 매우 빠른 방법으로 진행되는데 이는 "요소의 개수의 로그" 에 비례>하는 시간이 사용
    -. sorted sets 는 가장 진보한 redis 데이터 Type

 

Redis on Windows

  • The Redis project does not officially support Windows.
  • Microsoft Open Tech group 에서 개발 및 유지보수 (but, 64bit only)

 

 

Install on Windows

설치 진행

포트 및 힙 사이즈

인스톨 후 서비스 자동 등록됩니다.

 

Replication

  • Master - Slave 구성 / 비동기식 replication / 실시간
  • 2.6 버전부터 Slave는 default가 쓰기 불가능, 조회만 가능 (slave-read-only 파라미터로 변경 가능)
  • 설정 : slaveof <masterip> <masterport>