Ⅰ. NoSQL 데이터베이스의 특성
가.NoSQL(Not Only SQL) 특징
1. 관계형 모델을 사용하지 않음 (Not Using the relational model)
2. 클러스터에서 잘 동작함 (Running well on clusters)
3. 대부분 오픈 소스임 (Mostly open-source)
4. 21세기 웹 환경을 위해 구축됨 (Built for the 21st century web estates)
5. 스키마가 없음 (Schema-less)
나.NOSQL 이론
1. NoSQL은 분산 처리 구조를 가지며 CAP 이론이 적용 됨
-일관성(consistency):
-가용성(availability):
-분할 용인(partition tolerance):
2. NoSQL 시스템은 ACID 속성 대신에 BASE 속성을 따른다.
-기본적으로 확장적 (Basically Available)
-소프트 상태(Soft state)
-결국 일관적(Eventually consistent)
Ⅱ. NoSQL 데이터베이스 시스템
가. 키-값 저장소
- 키/값(Key/Value) 쌍을 지원
- Memchahed, Redis, 아마존의 Dynamo, 볼드모트(Voldemort), 오라클의 버클리 DB
나. 넓은 컬럼 저장소(또는 컬럼 패밀리)
- 키/밸류 저장소의 확장 개념으로, 밸류에 컬럼 패밀리 형태(열의 확장 개념)를 사용
- Cassandra, Hbase, Hypertable, Accumulo
다. 문서 저장소
- 하나의 키에 하나의 값(문서), xml, JSON
- MongoDB, CouchDB, Couchbase, Amazon, DyanmoDB, OrientDB
라.그래프 데이터베이스
- 그래프 형태의 데이터를 저장
- Neo4j, InfiniteGraph, Titan, ArangoDB, Trinity
Ⅲ. NoSQL 데이터베이스 성능 비교 동향
- 다양한 종류의 NoSQL 데이터베이스 시스템들로 어떤 NoSQL 시스템이 더 적합한지 결정하는 것을 어려움. 벤치마크 및 가이드라인 존재
- 개발자의 익숙함과 수행해야 할 작업의 유형에 따라 NoSQL 데이터베이스를 결정할 것을 권함
가. 야후 클라우드 서빙 벤치마크 (YCSB, Yahoo! Cloud Serving Benchmark)
- 읽기-집중 워크로드, 쓰기-집중 워크로드, 스캔 워크로드 등의 패키지를 제공하며, “50/50 읽기/업데이트”와 “95/5 읽기/업데이트” 가 많이 사용
1. 50/50 읽기/업데이트
- 업데이트 중심의 테스트 케이스
2. 95/5 읽기/업데이트
- 읽기 중심의 테스트 케이스
나. NoSQL 데이터베이스 성능 비교
- 업데이트 중심시, 카산드라(Cassandra)는 쓰기에 최적화, Sherpa와 MySQL은 비슷, HBase 는 쓰기 시에는 가장 낮은 지연율
- 읽기 중심시, HBase 일관적, MySQL 가장 좋은 성능, 카산드라는 읽기에서 높은 효율, Sherpa도 낮은 읽기 지연율
- 수행 유형, 인메모리인 경우 등 상황에 따라 성능이 다르게 평가됨
다. 그래프 데이터베이스 성능 비교
- 그래프 데이터베이스는 연결된 데이터라는 저장 특성 때문에 다른 분류의 NoSQL 데이터베이스와의 직접적인 비교가 어려움
- 구조에서 깊이가 4이상의 되는 탐색을 포함하는 질의의 경우 그래프 데이터베이스인 Neo4j가 좋은 성능
- 다만, 실제 그래프 데이터를 이용한 PageRank의 경우 RDBMS인 MySQL의 성능이 월등히 좋음
라. NoSQL 데이터베이스 선택을 위한 가이드라인
1. 키-값 저장소
- 세션 정보, 사용자 프로파일, 선호도, 쇼핑 카트 데이터
- 데이터의 질의가 필요하거나, 저장되는 데이터들이 관계를 가지고 있거나, 동시에 여러 키들을 다루어야 하는 경우 비추천
2. 문서 저장소
- 내용 관리 시스템, 블로깅 플랫폼, 웬 분석, 실시간 분석, e커머스
- 복잡한 트랜잭션이나 다양한 집계 구조에 반하는 질의를 필요로 하는 시스템의 경우 비추천
3. 컬럼 패밀리 데이터베이스
- 내용 관리 시스템, 블로깅 플랫폼, 카운터의 유지, 사용의 만료, 로그 집계 같은 과도한 쓰기 볼륨에 유용
- 초기 개발 단계이거나 질의 패턴이 변화는 시스템에서는 비추천
4. 그래프 데이터베이스
- 소셜 네트워크, 공간 데이터, 물건이나 돈을 위한 라우팅 정보, 추천 엔진
- 연결된 데이터가 필요한 문제들에 매우 적합
'정보관리기술사' 카테고리의 다른 글
(IT 이슈) 데이터웨어하우스(DW) (0) | 2020.11.27 |
---|---|
(IT 이슈) 공공데이터 품질관리 (0) | 2020.11.27 |
(IT 이슈) 데이터 경제와 개인정보 비식별 기술 동향 (0) | 2020.11.25 |
(IT 이슈) 공공데이터 품질관리 중장기계획 (0) | 2020.11.25 |
정보관리기술사 한달만에 위기 (0) | 2020.11.25 |