관리 메뉴

나만의공간

Redis란 무엇인가? 본문

DB/Redis

Redis란 무엇인가?

밥알이 2015. 6. 5. 17:45

[Redis 란?]

 

  - Remote Dictionary Server 를 의미

  - 이탈리아 해커인 Salvatore Sanfilippo가 개발한 오픈 소스 소프트웨어

  - 휘발성이면서 영속성을 가진 key-value 저장소

 

[Redis 의 장점]

 

  1. 리스트, 배열 형식의 데이터 처리에 특화됨

     - value 값으로 문자열, 리스트, set, sorted set, hash 형 등 여러 데이터 형식을 지원함

     - 리스트 형 데이터의 입력과 삭제가 MySQL에 비하여 10배 정도 빠르다.

 

  2. 여러 프로세스에서 동시에 같은 key에 대한 갱신을 요청할 경우 Atomic한 처리로 

     데이터 부정합 방지 Atomic 처리 함수를 제공


  3. 메모리를 활용하면서 영속적인 데이터 보존

     - 명령어로 명시적으로 삭제하거나 expires를 설정하지 않으면 데이터를 삭제하지 않는다.

     - 스냅샷 기능을 제공하여 메모리의 내용을 *.rdb 파일로 저장하여 해당 시점으로 복구할 수 있다.

 

  4. 여러 대의 서버 구성

     - Consistent hashing 혹은 master-slave 형식으로 구성 가능함

 

 

[CAP 이론]

 

분산 컴퓨팅 시스템에서는 다음의 세가지를 동시에 제공하는 것은 불가능하고 두가지만 만족할 수 있다.

 

  - Consistency (일관성) : 각 사용자는 항상 동일 데이터 값을 가져야 한다.

  - Availability (가용성) : 모든 사용자는 항상 읽기 / 쓰기가 가능해야 한다.

  - Partition tolerance (지속성) : 일부 데이터를 손실하더라도 사용자는 사용이 가능해야 한다.

 

CAP 이론에 의해서 DB를 분류하자면 현재 우리가 사용하고 있는 RDBMS는 CA에 해당하고,

Redis는 일관성과 지속성을 만족하는 CP에 해당된다.

 

출처 : http://lovedb.tistory.com/149

'DB > Redis' 카테고리의 다른 글

Redis 설치 및 실행 방법 (Windows용)  (0) 2015.06.05
Comments