빅데이터/nosql
NoSQL강의) Key-value Database 개요 및 설명
AndersonChoi
2019. 7. 22. 14:19
Key-value Database 개요
Key와 Value의 쌍으로 이루어진 저장소. Key가 이미 존재하는 경우 기존 값을 덮어쓴다.
Value는 BLOB(Binary Large Object) 즉, 어떤 형식(type)이든 저장 가능.
특징
- 일관성 : Eventual Consistency
- 트랜잭션 : 정족수 기반임. 정족수3이면 강한 consistency를 가짐
- 조회 : 키로만 조회 가능, 대부분 secondary index 지원하지 않음
- 데이터 구조 : BLOB, JSON, XML 무엇이든 저장 가능
- 확장성 : 대부분 샤딩을 이용한 확장. 샤드키 설정 중요. 샤드노드 + RF(Replication Factor) 조정 ☞ 일관성 vs 가용성 조절
사용하기 적합한 경우
☞ 세션정보 저장, 사용자 정보 저장, 관계정보(follow, follower ▷ Redis의 Set정보)때 사용하기 적합
☞ 읽기 캐쉬, 쓰기 캐쉬 용도로 많이 사용.
사용 부적합한 경우
☞ 데이터 간의 관계가 있는 경우, key가 아닌 data로 조회하는 경우(일부 NoSQL은 검색엔진(Lucene, Solr)과 연동 가능)
☞ 집합처리(필요하다면 application layer에서 수행)
☞ 여러개 값에 대한 다중 트랜젝션 필요할 경우(RDB 사용)
반응형