본문 바로가기
쿤즈 Server/MongoDB

[MongoDB] 몽고DB란 무엇인가 (feat. NoSQL)

by :)Koon 2021. 3. 3.

가장 익숙한 데이터베이스들은 RDBMS라 해서 관계형 데이터베이스 입니다. 많이 알려진 RDBMS는 Oracle, Mysql, MriaDB, MS-SQL이며 최근에 다시 급 부상하고 있는 PostgreSQL이 있습니다. 이들은 모두 관계형 데이터 베이스입니다. Table과 row, column이 존재하고 Table간의 관계를 연결시켜서 데이터를 가져오는 형태입니다.


그리고 반대되는 개념은 아니지만 비교 대상중 하나로 NoSQL 데이터베이스가 있습니다. 대표적으로 MongoDB입니다. 몽고DB는 우리가 개발시 흔히 주고받는 JSON 형태의 데이터가 DB에 저장되는 형태입니다. 물론 실제 저장은 BSON을 이용합니다.

이번 포스팅에서는 MongoDB가 무엇이고 NoSQL이 무엇인지를 알아보도록 하겠습니다.


NoSQL이란 무엇인가

우선 몽고DB를 알기전에 NoSQL부터 알아보도록 하겠습니다. NoSQL이란 단어를 보면 드는 생각은 SQL이 없다라는 느낌입니다. 그래서 보통 '비 관계형 데이터베이스'라고 불리기도 합니다. 어찌보면 다 맞는 말인것 같습니다.

NoSQL은 관계형 데이터베이스의 형태가 아닌 다른 형태로 데이터를 저장하기 때문입니다. 그래서 Query도 우리가 아는 관계형 데이터베이스의 Query형태가 아닙니다.

관계형 데이터베이스만을 사용했다면 NoSQL은 굉장히 낯설고 생소합니다. 관계형 데이터베이스의 저장 형태와는 너무도 다르기 때문입니다. 실제로 테이블간의 분할도 필요 없어서 데이터 모델링이 더 직관적이고 쉽다고 하는 분들도 있는것으로 보입니다. NoSQL은 데이터 모델을 사용하면 데이터들을 구조내에 모두 중첩해서 넣을수 있습니다.

NoSQL은 유연함 또한 큽니다. 비정형 데이터이기 때문에 엄청난 양의 데이터들을 손쉽게 넣고 확인할 수 있습니다.


MongoDB란 무엇인가

몽고DB란 데이터를 저장하고 엑세스하는 구조화된 방법을 의미합니다.


그리고 NoSQL 데이터베이스입니다. 정확히 말하면 NoSQL document 데이터베이스입니다. Document라 함은 문서의 형태로 데이터가 저장되기 때문입니다. 그래서 몽고DB에서는 이러한 문서들의 모음을 데이터베이스라는 곳에 저장하고 있습니다.


MongoDB의 Document

Document라 하는 문서와 구조화된 방법이라는 말에 대해서 조금 더 풀어볼까 합니다. 문서는 데이터의 필드와 값(Field-Value)을 묶어 한쌍의 데이터로 구성하고 저장하는 방법입니다.

예를들어서 이름이 Ironman이면 name과 Ironman을 묶어서 한 쌍의 데이터로 구성하고 이를 저장하게 됩니다.여기서 필드와 값은 다음과 같은 의미를 가집니다.

  • Field - 데이터를 식별하는 식별자(유니크한 이름)
  • Value - Field에 연관된 데이터

이러한 Field와 Value 들이 모여서 Document라는 구조를 이루게 됩니다. 이러한 Document 다수가 모여서 만들어진 것을 MongoDB에서는 Collection라 부릅니다.
(2021. 06. 18. 글이 수정되었습니다.)


MongoDB의 이용

몽고DB는 학습을 위한 적은 용량은 무료로 이용할 수 있습니다. 몽고DB 사이트에 가입하고 몽고DB Atlas를 이용해서 데이터를 CRUD(Create, Read, Update, Delete)를 이용해 볼 수도 있습니다.

물론 쉘을 이용해서도 접근하고 사용할 수 있습니다. 무료로 이용해 볼 수 있는만큼 학습을 위해서라면 써보시는것을 추천해 드립니다. 사용법에 대해서는 다음 포스팅으로 이어가겠습니다.


오늘 포스팅에서는 MongoDB가 무엇이고 NoSQL이 무엇인이 간단히 알아보았습니다. 관계형 데이터베이스에 익숙해져있는 분들에게는 굉장히 낯설고 다른 구조의 데이터베이스를 만나보실 수 있습니다. 저도 처음 공부하는 만큼 익숙해져보려 합니다.

추가적으로 MongoDB University를 가입해서 강의를 들으면 수료증과 Certificate를 취득할 수 있는 시험을 보실 수도 있습니다. 관심 있으신분들은 아래 링크에서 참고해 주세요.

MongoDB site : www.mongodb.com/

The most popular database for modern apps

We're the creators of MongoDB, the most popular database for modern apps, and MongoDB Atlas, the global cloud database on AWS, Azure, and GCP. Easily organize, use, and enrich data — in real time, anywhere.

www.mongodb.com

MongoDB University : university.mongodb.com/

Free MongoDB Official Courses | MongoDB University

RECOMMENDED M001 MongoDB Basics Set up your MongoDB database and learn to search, create, and analyze your data.

university.mongodb.com

댓글