-
1. NoSQL 과 MongoDBIT/MongoDB 2021. 3. 16. 23:02
1. NoSQL
* "Non Relational Operation Database SQL" 의 줄임말로써 "관계형 데이터베이스가 아닌 SQL" 입니다.
* 관계형 데이터베이스에서는 데이터의 중복과 무결성 보장을 위해 정규화를 하는데, 여기서 테이블간의 Join으로 인한 성능저하가 발생합니다.
* NoSQL은 아래와 같이 중첩 데이터의 형태로 불필요한 Join을 최소화 시킵니다.
{ _id: <ObjectId1>, name: "helloworld", desc: { age: 36, email: sgsgbaek@gmail.com" } }
* NoSQL의 장점
1) 불필요한 Join의 최소화로 속도 향상
2) 유연성있는 서버 구조 제공
3) 비정형 데이터 구조로 설계비용 감소
4) Read/Write가 빠르고 빅데이터 처리 가능
5) 분산처리 및 병렬처리 가능
* 비정형 데이터로 인해 관계형 데이터베이스보다 1.5배정도 용량을 많이 차지합니다.
* NoSQL은 크게 4종류의 모델이 있습니다
1) Key-Value : Redis, Memcached
2) Column : Hbase, Casandra
3) Document : MongoDB
4) Graph : GraphDB
2. RDB 와 NoSQL 비교
RDB NoSQL Scale-up 확장 Scale-out 확장 무결성 유연성 데이터 중복 제거 데이터 중복 허용 트랜잭션 빠른읽기,쓰기 3. MongoDB
* JSON 타입의 Document 방식의 NoSQL 로써 다음과 같은 특징이 있습니다
1) JSON 형식의 데이터 구조
2) CRUD 위주의 다중 트랜잭션 처리 가능
3) Sharding(분산) / Replica(복제) 기능 제공
4) Memory Mapping 기술 기반으로 빅데이터 처리에 탁월함
4. RDB 와 NoSQL 의 논리적구조 비교
RDB NoSQL Table Collection Row Document Column Field Primary Key Object_ID Field Relationship Embbeded & Link 'IT > MongoDB' 카테고리의 다른 글
3. Database 생성 및 Collection 생성 (0) 2021.03.17 2. MongoDB 설치 및 설정 (0) 2021.03.16