Redis란?
- Redis는 데이터베이스, 캐시, 메시지 브로커 및 대기열로 사용하는 빠르고 오픈 소스, 인 메모리 키-값 데이터 스토어
Redis 동작은?- 데이터를 디스크 또는 SSD에 저장하는 데이터베이스와는 달리 모든 Redis 데이터는 메모리에 상주- 디스크에 액세스할 필요가 없으므로 Redis와 같은 인 메모리 스토어는 검색 시간 지연을 방지하고 수 마이크로초 만에 데이터에 액세스함- Redis는 다양한 데이터 구조, 고가용성, 지리 공간, Lua 스크립팅, 트랜잭션, 온디스크 지속성 및 클러스터 지원을 제공하므로 인터넷 규모의 실시간 앱을 좀 더 쉽게 구축가능
AWS ElasticCache란?
- 분산 메모리 캐시(In-Memory Cache)를 손쉽게 생성하고 확장할 수 있는 서비스
In-Memory Cache란 ?
- 모든 데이터를 메모리(RAM)에만 올려 놓고 사용하는 데이터베이스의 일종
일반 DBMS와 In-Memory Cache Redis와의 차이는?
- 일반적으로 데이터베이스(RDBMS)는 디스크(HDD,SSD)에 데이터를 영구적으로 저장해 놓고, 필요한 데이터만 메모리에 읽어옴
- Redis의 경우는 데이터를 메모리에 올려놓고 사용하기 때문에 데이터를 저장 및 검색 속도면에서 훨씬 더 빨리 데이터를 읽어올 수 있다.
In-Memory Cache의 단점은?
- 메모리 비용이 비싸다.
- 전원 공급이 중단되면 데이터는 소멸함
- 메모리의 크기만큼 데이터 저장 가능
AWS ElasticCache를 사용하는 이유?- 성능과 편의성, 분산 캐시 환경 구축에 필요한 비용을 절감- 읽기 중심의 서비스(SNS, 게임, 추천엔진 등)를 제공하는 환경, 고속으로 데이터를 분석해야 하는 환경에 적합- 데이터베이스의 부하를 줄이고자 할때 대량 분산 캐시 환경을 자체적으로 운영하기에 부담이 있을 때 유용
AWS ElasticCache 2가지
- Memcached : 분산 메모리 캐시 시스템
- Redis : String, Hash, List, Set, Sorted Set 등 다양한 데이터 형식을 제공하는 키-값( Key and Value) 방식의 데이터 저장소
Memcached와 Redis 비교
Memcached | Redis | |
DB부하를 오프로드하는 단순캐시 | Yes | Yes |
쓰기/스토리지를 위해 수평적으로 확장할 수 있는 기능 | Yes | No |
다중 스레드 성능 | Yes | No |
고급 데이터 유형 | No | Yes |
데이터 세트 정렬/순위 지정 | No | Yes |
Pub/Sub 기능 | No | Yes |
자동 장애 조치가 있는 다중 가용 영역 | No | Yes |
지속성 | No | Yes |
참고 :
https://aws.amazon.com/ko/redis/
'cloud > AWS' 카테고리의 다른 글
AWS - Direct Connect (0) | 2021.06.21 |
---|---|
AWS -Lambda (0) | 2021.06.21 |
AWS - RDS(Relational Database Services) (0) | 2021.06.20 |
AWS- Amazon Auto Scaling (0) | 2021.06.18 |
AWS-ELB(Elastic Load Balancing) (0) | 2021.06.18 |