본문 바로가기

Programming/DataBase

<MongoDB> 몽고DB란 무엇일까??

728x90
반응형


몽고DB? Oracle, mysql같은게 아닌가?

무엇인지 한번 알아보자!


1. 몽고DB란?

 데이터 객체들이 컬렉션 내부에서 독립된 문서로 저장되는, 문서 모델을 기반으로 하는

NoSQL 데이터베이스입니다.

 몽고DB는 컬렉션을 사용해 데이터를 하나로 묶습니다. 

컬렉션(Collection)이란 용도가 같거나 유사한 문서들을 그룹으로 묶은 것을 말합니다. 이러한 컬렉션은 기존의 SQL DB의 테이블처럼 동작합니다.

 문서(Document)란 몽고DB내에 있는 하나의 실제데이터를 나타내는 표현입니다.

 컬렉션은 한개 이상의 연관된 실제데이터로 이루어져 있습니다.

 이러한 문서들은 내부 하위 문서들을 포함하고 있어 애플리케이션에 가까운 고유 데이터 모델을 제공합니다.

 문서들은 BSON으로 저장됩니다. BSON이란 이진 JSON(Binary JSON)을 말합니다.

 몽고DB의 필드/값 쌍은 Javascript의 프로퍼티/값 쌍과 일치합니다

 필드명에는 null문자, 점(.), $를 사용할 수없고, id필드에는 객체 ID만 쓰도록

예약되어있습니다.

 몽고DB 내 문서의 최대 크기는 16MB입니다.


2. 몽고DB의 데이터 형식

 몽고DB는 형식(type)으로 질의할 때  1에서 255사이의 정수형 ID 숫자를 각 데이터 형식에

할당합니다.


형식

숫자

형식

숫자

실수형(Double)

1

정규표현식

11

문자열(String)

2

자바스크립트

13

객체

3

심볼(Symbol)

14

배열

4

자바스크립트

(with scope)

15

바이너리 데이터

5

32비트 정수형

16

객체 ID

7

타임스탬프

17

불린(Boolean)

8

64비트 정수형

18

날짜(Date)

9

Min

255

(Null)

10

Max

127


다른 BSON 형식의 값을 비교할 때, 몽고 DB는 제일 낮은 순서부터 제일 높은 순서대로 순서를 비교합니다.

1. Min 키                                     7. 바이너리 데이터

2. 널                                           8. 객체 ID

3. 숫자(32,64비트 정수형, 실수형)     9. 불린

4. 심볼, 문자열                              10. 날짜, 타임스탬프

5. 객체                                        11. 정규표현식

6. 배열                                        12. Max 키


3. 몽고DB의 데이터 구조


반응형