본문 바로가기
MongoDB/MongoDB Atlas 이용방법

MongoDB Atlas 구조 살펴보기

by Fletcher 2024. 7. 14.

※때에 따라서 해당 웹 페이지의 인터페이스 디자인이 조금씩 변하므로,

조회하시는 시간과 본 포스트 작성의 시간적 격차가 있는 경우

해당 설명과 상이한 부분이 있을 수 있습니다!

 

 

반갑습니다

저번 포스트에서는 함께 MongoDB Atlas 회원가입 및 무료등급 클러스터 생성까지 알아보았습니다 ^^

오늘은 서비스 이용에 있어서 간단하게나마 구조를 조금 살펴보려고 합니다!

 

 

 

 

먼저 몽고DB 공식 페이지에 접속해주세요

계속 다른 페이지로 연결되는 경우도 있어서, 편의를 위해 링크 첨부하겠습니다 ^^!

https://www.mongodb.com/ko-kr

 

그리고 화면 우측 상단의 "등록" 버튼을 눌러주세요!

 

 

 

 

그럼 상기 이미지와 같이 로그인 화면으로 넘어갈 수 있습니다!

회원이 아닌 경우 Sign Up을 눌러서 회원가입을 해주시면 되겠고,

연동 이메일 또는 계정으로 가입하신 경우에는 Google 및 GitHub 버튼을 클릭해주시면 되겠습니다!

연동 이메일(계정) 외 직접 가입하신 분들은 Email Address 입력해주시고 Next 버튼 눌러주시면 되겠습니다 ^.^!

 

 

 

 

지난 포스트에서 두어번 본 그 익숙한 콘솔 화면으로 이동하셨을겁니다 ^^

 

 

 

 

 

콘솔 화면의 좌측 상단을 살피시면,

구글 계정으로 가입하신 경우, 이름's Org 년-월-일 식으로

Organization Name이 자동으로 설정되어 있는걸 보실 수 있습니다!

해당하는 부분을 누르니 Organization Name을 검색할 수 있는 검색창이 나옵니다 ^^

 

 

 

 

그리고 그 바로 밑에 보시면 현재 설정되어 있는 Project Name이 표기되는데요

저 같은 경우에는 "Project 0"으로 설정되어 있네요 아마 이게 default 값인가봅니다 ^.^

보시면 New Project 버튼이 있죠?

본인의 계정에 하위 목록으로 여러 Project를 둘 수 있습니다 ^^!

 

이미지에서는 약간 가려져있는데, 현재 열람중인 프로젝트 이름 옆에 Data Services가 있고,

그 바로 밑에 " 이름's Org 년-월-일 > 현재 프로젝트 이름 "으로 표시가 되어 있습니다

여기서 본인 Organization Name을 누르시면 Organization 페이지로 넘어가는데요!

 

 

 

 

이렇게 Organization 페이지에서 여러가지 메뉴 탭들을 통해서 정보들을 열람할 수 있는데요

 Projects 페이지에서는 현재 생성되어 있는 프로젝트가 무엇무엇이 있는지,

그 프로젝트에 생성되어 있는 Cluster가 몇 개인지, 사용자가 몇 명인지, 알람이 몇 개가 있는지 확인 가능합니다 ^^

여기서 Settings 탭을 선택해보겠습니다!

 

 

 

 

그럼 상기 이미지와 같은 페이지로 이동하는데요

해당 Organization ID, Name, Created On 등 여러 정보가 표기됩니다!

좌측 상단의 Organizaion Name 옆의 설정 아이콘을 눌러도 바로 이 페이지로 이동할 수 있습니다 ^.^

 

정리 해보자면,

제일 먼저 가입한 계정마다의 고유 Organization ID가 있습니다

그리고 그 하위 목록으로 여러 Projects를 생성할 수 있는데요!

저 같은 경우에는 "Project 0"이라는 이름으로 프로젝트 하나가 생성되어 있었죠^^

그리고 각 프로젝트의 하위 목록으로 Clusters가 존재합니다

 

미리 간단하게 말씀드리자면,

Organization ID → Projects → Clusters → Database → Collections → Documents 순서입니다 ^.^

이 중에서 Clusters까지 살펴보았네요 ^^

 

이제 다시 Project 0을 클릭해서 콘솔 화면으로 이동해보겠습니다!

 

 

 

 

저는 해당 무료 등급 클러스터의 이름을 "project-server"라는 이름으로 지정했었습니다 ^.^

현재 Data Size가 134.45MB라고 사용중인 메모리 양도 표기가 되네요

저는 아직 어떤 데이터도 집어넣은 적이 없는데 무엇 때문에 사용 중인 용량이 있는 걸까요?

"Browse collections"를 클릭해서 한 번 살펴보겠습니다 ^^

 

 

 

 

해당 프로젝트의 상세 정보화면입니다!

그 중에서 가장 중요한 Collections 탭이 선택되어 있어 해당 관련 정보가 화면에 출력되어 있는데요 ^^

 

 

 

[Organization]    [Project]    [Cluster]    [Database]    [Collection]    [Document]    [Field]    [Value]
ORGANIZATION
NAME
PROJECT CLUSTER DATABASE COLLECTION DOCUMENT FIELD : VALUE
User's Org 2024-07-14 Project 0 project
-server
sample
_mflix
comments document1 field1 : value1
field2 : value2
... : ...
document2 … : …
document3 … : …
 
embedded
_movies
 
movies  
sessions  
theaters  
users  
database1    
database2    
   
cluster A database A collection A    
cluster B    
   
Project 1 Cluster 1    
     
Cluster 2      
Cluster 3      
       
Project 2        
         

 

이해를 돕기 위해 조잡하게나마 표를 한 번 만들어봤습니다 ^.^;;

 

클러스터 생성시에 default로 들어간 데이터들을 살펴보겠는데요!

 

현재 저의 Organization에는 Project 0라는 하위 프로젝트가 있고,

이 프로젝트 안에 project-server라는 이름의 클러스터가 있고,

이 클러스터 안에는 sample_mflix라는 데이터베이스가 생성되어 있습니다 ^^!

 

그리고 이 데이터베이스 안에 총 6개의 컬렉션이 생성 되어 있는데요

첨부한 상기 이미지에서는 컬렉션들 중 comments라는 이름의 컬렉션의 상세 정보가 나타나있습니다!

comments라는 컬렉션에는 41,079개의 도큐먼트가 포함되어 있네요

그리고 각 도큐먼트에는 공통적으로

"id", "name", "email", "movie_id", "text", "date"라는 이름의 field들이 존재하고

이 필드들에 각각 해당하는 value들이 매핑되어있네요 ^.^!!

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 comments 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 41,079개네요!

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 embedded_movies 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 3,483개네요!

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 movies 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 21,349개네요!

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 sessions 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 1개네요!

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 theaters 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 1,564개네요!

 

 

 

 

 

 

 

 

샘플데이터인 sample_mflix 데이터베이스의 users 컬렉션에 들어있는 데이터 정보들입니다 ^^!

이 컬렉션의 총 도큐먼트 수는 185개네요!

 

 

이렇게 좀 살펴보니,

스토리지 용량 512MB 제한의 무료 등급 클러스터에

생성 직후 용량이 왜 136MB씩이나 사용 중 상태였는지 이제 알겠네요 ^^

 

이상으로 MongoDB의 구조에 대해서 조금 살펴보았는데요 ^^

같은 NoSQL이더라도 그 구조에 따라서 또 구분이 가능하죠

 

일단 Graph 모델  /  Aggregate-oriented 모델로 구분이 가능하고,

이 Aggregate-oriented 모델은 다시 세 가지 정도로 구분 가능한데,

대표적으로 ①Key-value 형식 제품은 AWS의 DynamoDB 등,

②Documents 형식 제품은 Firebase의 Firestore 또는 MongoDB 등,

③Column-Family 형식 제품은 Cassandra 등이 있죠 ^.^

 

 

참 이런 저런 개념과 기술과 제품들을 접하다보면

정말 똑똑한 사람들이 많다는걸 느낍니다 ^.^;;

 

이번 포스트도 읽어주셔서 감사드리고, 다음 포스트에는 Python 코드를 통해서

MongoDB의 기본적인 CRUD를 살펴보도록 하겠습니다

 

드넓은 개발의 세계를 항해하시는 모든 분들 늘 건승하시고 행복하시기 바랍니다 ^.^!

'MongoDB > MongoDB Atlas 이용방법' 카테고리의 다른 글

MongoDB Atlas 클러스터 생성하기  (0) 2024.07.14