[빅데이터] 분산 KVS, 와이드 컬럼 스토어, 도큐먼트 스토어
분산 KVS
분산 KVS 란
- 데이터를 키값 쌍으로 저장하는 데이터 저장소
- 모든 데이터에 고유의 key를 지정
- key 를 통해 클러스터 내의 어느 노드에 배치할지 결정
- 노드간 부하를 균등 분산
- 노드를 증감하여 클러스터 성능을 조정 가능
Amazon DynamoDB
- AWS에서 제공하는 분산형 NoSQL 데이터베이스
- 하나, 두개의 키에 연결
- 스키마리스 데이터 저장
- JSON 같은 중첩된 데이터 구조도 취급
- Amazon EMR, Redshift 등과 결합해 Hive 배치처리나 데이터 웨어하우스 전송 등으로 활용
- DynamoDB Streams 로 데이터 변경을 실시간 스트림 처리 가능
와이드 컬럼 스토어 (wide-column store)
- 2개 이상의 임의의 키 에 데이터를 저장
- Google Bigtable, HBase, Cassandra 등
- 행 키와 컬럼 명 조합에 대해 값 저장
- 데이터 집계에는 적합하지 않다
- 집계시 모든 노드에서 데이터를 모아야 하기 때문
- Hive, Presto, Spark 등 쿼리 엔진을 통해 데이터 추출 필요
도큐먼트 스토어 (document store)
- 스키마리스 데이터를 저장, 쿼리 실행하는데 적합
MongoDB
- 여러 노드에 데이터 분산하는 분산형 도큐먼트 스토어
- 대량의 데이터 집계에는 적합하지 않음
- 와이드 컬럼 스토어와 동일하게, 쿼리 엔진으로 데이터 추출 필요
reference