728x90
반응형
NoSQL [Non Relational Operation Database SQL]
고정되지 않은 테이블 스키마
:필요할 때 마다 필드를 추가/ 제거 가능 → 개발 속도 향상
관계형 데이터베이스가 아닌 SQL: 데이터 간의 관계를 정의하지 않는 데이터베이스
일반적인 관계형 데이터베이스에서는 데이터의 중복을 제거하고 무결성을 보장하기 위해서 정규화를 하게 되는데 이러한 정규화가 과도한 JOIN으로 인해 성능 저하가 있을 수 있습니다.
하지만 NoSQL은 아래의 그림 처럼 중첩데이터 형태를 띔으로써 불필요한 JOIN 을 최소화시킵니다.
NoSQL의 장점
1) 불필요한 Join의 최소화
2) 유연성있는 서버 구조 제공
3) 비정형 데이터 구조로 설계비용 감소
4) Read/Write가 빠르며 빅데이터 처리가 가능
5) 저렴한 비용으로 분산처리 및 병렬처리 가능
4번 장점의 경우는 반드시는 아닙니다. 일반적인 관계형 데이터베이스가 빠른 경우도 많습니다.
그리고 비정형 데이터로 인해 관계형 데이터베이스보다 1.5배정도 용량을 많이 차지 합니다.
이러한 NoSQL은 크게 4종류의 모델이 있고 대표적인 데이터베이스입니다.
1) KEY-VALUE - Redis , Memcached
2) COLUMN - Hbase, Casandra
3) DOCUMENT - MongoDB
4) GRAPH - GraphDB
>> 관계형 데이터베이스(Relational Database)와 MongoDB 논리적 구조 비교
출처: https://cionman.tistory.com/44 [Suwoni블로그]
분산형 구조 (대용량 데이터 저장 용이)
: sharding 지원(클라스터 데이터 상호 복제)
728x90
반응형
'Web > MongoDB' 카테고리의 다른 글
[MongoDB]Map Reduce (0) | 2020.10.15 |
---|---|
[MongoDB]aggregation (0) | 2020.10.15 |
[MongoDB]CRUD_연습문제 (0) | 2020.10.15 |
[MongoDB]CRUD ★ (0) | 2020.10.15 |
[MongoDB]Data Structure (0) | 2020.10.15 |