MongoDB 공부 및 적용 : 기본 설정 및 모델링

정재헌·2023년 3월 23일
0

Database

목록 보기
1/6

MongoDB를 이용한 프로젝트를 진행하게 되어, MongoDB에 대한 공부를 함께 진행 중에 있다. 처음에는 좀 더 편하게 이해하기 위하여 MongoDB를 사용한 회사들의 기술 블로그를 바탕으로 공부를 하였으며, 이제는 좀 더 깊은 이해를 위해서 공식 문서를 바탕으로 블로그를 작성해보고자 한다.

<참고한 기술 블로그 url>
https://meetup.nhncloud.com/posts/274
https://meetup.nhncloud.com/posts/275
https://meetup.nhncloud.com/posts/276

MongoDB 기본 설정

먼저, MongoDB Atlas에 계정을 만든다.

그 후, cluster 설정과 함께 어떤 환경에서 사용할 수 있는지를 잡아 준다.

  • cluster : 어떤 tier의 클러스터를 사용할지 결정
  • additional settings: back up 설정 여부 결정
  • cluster name 설정
  • create cluster로 완료

다음으로, security 설정으로, 액세스 권한에 대해 설정한다.

  • username, password 설정
  • access IP 설정 (내 로컬 IP + 추가 IP 설정 가능)

마지막으로, MongoDB Atlas에 대한 기능들을 알아보기 위해, 먼저 샘플 데이터를 로드하여 사용해볼 수 있다. (필터링, 수정 기능 등)

MongoDB document model의 장점

  • 애플리케이션 데이터가 데이터베이스의 데이터와 일치하는 방식을 보다 쉽게 계획할 수 있도록 해준다.
  • 모든 형태 또는 구조의 모델 데이터를 사용할 수 있다.
    -> 하나의 형태의 데이터로 데이터베이스에 사용이 가능하도록!

왜 MongoDB?

  • 확장성
  • 탄력성(resilience)
  • 개발 속도의 향상
  • 높은 수준의 데이터, 개인정보 보호 및 보안

MongoDB 데이터 저장 방법

  • JSON 형태로 데이터가 저장되는 것처럼 보이지만, 실제로는 BSON 형태로 데이터가 저장되는 것이다. 이는 BSON에서는 JSON에서 지원하지 않는 형식의 데이터도 지원해주기 때문이다.

  • 스키마 모델 + 다형 모델 지원으로, 동일한 collection에 서로 다른 구조의 document를 저장할 수 있다. 하지만, 필요한 경우, 선택적 스키마 유효성 검증을 사용하여 해당 문서의 구조를 제한할 수 있다.

<출처>
https://learn.mongodb.com/learning-paths/mongodb-nodejs-developer-path

profile
백엔드 개발자

0개의 댓글