ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1. NoSQL 과 MongoDB
    IT/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
Designed by Tistory.