티스토리 뷰

Database

MongoDB 기초

조묵헌 2018. 5. 11. 17:19

몽고디비 (MongoDB)

NoSQL 데이터베이스

SQL문을 사용하는 기존의 관계형 데이터베이스가 아닌, 데이터베이스를 의미하는 것으로 Not Only SQL의 약자입니다.

NoSQL의 대표적인 제품으로는 MongoDB, Redis, Cassandra 등이 있습니다.

몽고 DB의 특징

V8 자바스크립트 엔진을 기반으로 제작된 Document based Database로 웹 및 소셜 게임등에 폭넓게 사용되고 있는 NoSQL입니다.

스키마리스

스키마를 강제하지 않습니다. 관계형 데이터베이스에 사용되는 스키마를 강제하지 않음으로써, 한 건의 데이터의 구조를 자유롭게 결정할 수 있습니다.

BSON 객체 사용

모든 데이터를 JSON과 비슷한 데이터 구조의 BSON 객체로 저장합니다.

쿼리 및 인덱스

document 기반의 쿼리문을 제공하며, 어떠한 attribute에서도 사용가능한 인덱스를 제공합니다.

레플리케이션이나 샤딩을 내부적으로 지원하고 있어 단순한 설정으로 이용이 가능합니다.

MySQL과의 비교

MySQL : 데이터베이스 - 테이블 - 레코드

  • Posts Table
post_id title description user_id
1 "MongoDB" "MongoDB is NoSQL DB..." 2
2 "MySQL" "MySQL is RDB..." 1
  • Users Table
user_id name
1 "Alice"
2 "Bob"

Mongo : 데이터베이스 - 컬렉션 - 도큐먼트

  • Posts Collection
// document
{ "title": "MongoDB", "description": "MongoDB is NoSQL DB...", "user_id": "Bob" } 
{ "title": "MySQL", "description": "MySQL is RDB...", "user_id": "Alice" }
  • Users Collection
{ "_id": "Alice", "name": "Alice Liddel", "age": 10 }
{ "_id": "Bob" }

'Database' 카테고리의 다른 글

MongoDB CRUD  (1) 2018.05.14
MongoDB 설치와 실행  (0) 2018.05.11
MongoDB 기초  (0) 2018.05.11
MySQL Index, Join, Grant  (0) 2018.05.11
MySQL Query CRUD  (0) 2018.05.11
MySQL 사용하기  (0) 2018.05.11
댓글
댓글쓰기 폼