티스토리 뷰
나만의 클라우드 Nosql
데이터 베이스 구축 해보기
오늘은 MongoDB Atlas을 활용해 보는 글을 작성해보겠습니다.
NoSQL 란
NoSQL은 "Not Only SQL"의 약자로서, 기존의 관계형 데이터베이스와는 다른 형태의 데이터베이스를 의미합니다. NoSQL 데이터베이스는 관계형 데이터베이스와는 달리 테이블을 사용하지 않고, 스키마를 사전에 정의하지 않습니다.
대신 NoSQL 데이터베이스는 다양한 데이터 모델을 사용하며, 대부분의 경우 관계형 데이터베이스보다 더 유연하고 확장성이 뛰어납니다. 예를 들어, NoSQL 데이터베이스는 키-값(key-value), 문서(document), 그래프(graph) 등의 다양한 데이터 모델을 지원합니다.
NoSQL 데이터베이스의 장점은 다음과 같습니다.
- 더 높은 확장성: NoSQL 데이터베이스는 수평적으로 확장하기가 쉽고, 대규모 데이터 처리에 적합합니다.
- 더 높은 유연성: 스키마가 사전에 정의되지 않으므로, 새로운 필드를 추가하는 등의 변경 작업이 용이합니다.
- 빠른 속도: NoSQL 데이터베이스는 일반적으로 데이터를 더 빠르게 처리할 수 있으며, 분산 데이터 처리를 지원하므로 더욱 빠른 데이터 액세스가 가능합니다.
- 다양한 데이터 모델: NoSQL 데이터베이스는 다양한 데이터 모델을 지원하여, 다양한 데이터 유형을 처리할 수 있습니다.
대표적인 NoSQL 데이터베이스로는 MongoDB, Cassandra, Redis 등이 있습니다.
MongoDB 란
MongoDB는 NoSQL 데이터베이스로, 문서 기반(Document-Oriented) 데이터 저장 방식을 채택한 오픈소스 DBMS입니다.
기존의 관계형 데이터베이스와는 달리, MongoDB는 스키마가 없으며, 데이터는 BSON(Binary JSON) 형태로 저장됩니다. 이러한 특징으로 인해 MongoDB는 유연성이 높고, 대규모 데이터 처리에 용이한 특징을 가지고 있습니다.
또한, MongoDB는 수평적 확장(Sharding)을 통해 대규모 데이터 처리를 지원하며, 복제(Replication) 기능을 통해 데이터의 안정성과 가용성을 보장합니다.
많은 웹 애플리케이션에서 MongoDB를 사용하여, 데이터의 처리 및 관리를 수행하고 있습니다.
MongoDB Atlas란
MongoDB Atlas는 MongoDB의 완전 관리형 클라우드 데이터베이스 서비스입니다. 이 서비스는 MongoDB 데이터베이스를 클라우드에서 호스팅 하고 관리하는 것을 중심으로 하며, 개발자 및 기업이 손쉽게 애플리케이션을 빌드하고 배포할 수 있도록 지원합니다.
MongoDB Atlas는 데이터베이스 클러스터를 프로비저닝 하고, 모니터링하고, 관리하기 쉽도록 도와줍니다. 또한 사용자 지정 보안 정책을 설정하고, 데이터를 안전하게 저장하며, 백업과 복구를 수행할 수 있습니다.
MongoDB Atlas는 다양한 클라우드 플랫폼에서 사용할 수 있습니다. 예를 들어, Amazon Web Services (AWS), Google Cloud Platform (GCP), Microsoft Azure 등의 클라우드 플랫폼에서 호스팅 할 수 있으며, MongoDB Atlas는 이러한 클라우드 플랫폼에서 쉽게 사용할 수 있도록 구성되어 있습니다.
MongoDB Atlas는 개발자 및 기업이 데이터베이스 관리 및 인프라 관리에 대한 부담을 줄여줌으로써 애플리케이션 개발 및 배포를 더욱 빠르고 안정적으로 만들어줍니다.
* Chart GPT 가 알려준 이론입니다. ㅎㅎ
설명은 여기까지
그럼 본격적으로 Atlas 무료 버전 사용 하는 방법
알아보겠습니다.
MongoDB 홈페이지 접속 및 회원 가입
우선 , 홈페이지 가셔서 회원가입 하시고 로그인하시면 됩니다.
그러면, Poject 관리 화면으로 나옵니다.
Project 생성하기
자 그럼 프로젝트 생성을 해볼게요.
1. 프로젝트 생성 (Create Project) Click 하고
2. Name Your Project : 원하는 프로젝트 명을 입력
3. Next : 생성 버튼
누른 다음은,
프로젝트의 계정별 권한 설정하는 창이 나옵니다.
지금은, 저 혼자 쓰니까 Default 값으로 Create Project를 실행하겠습니다.
(나중에, 여러 사용자들/관리자들을 프로젝트 별 권한을 부여해서 유동적으로 관리가 가능하겠죠??)
1. Create Project 클릭
그럼 이렇게, 프로젝트 대시보드가 생성됩니다.
Free 몽고디비 생성하기
자 그럼, 데이터 베이스를 생성해보겠습니다.
Project 메인 화면에서, "Build Database" 하시면
다음과 같은 화면으로 넘어갑니다.
데이터 베이스 구성을 위한 , 창으로 넘어갑니다.
저희는, 공짜 DB를 구축할 거니까, MongoDB Atlas가 제공해 주는 디비로 가겠습니다.
1. M0 Free 선택
2. Provide AWS 클릭
- 이건 자유니까 원하는 걸로 선택, 저는 AWS가 편해서
- MongoDB Atlas가 제공해 주는 클라우드는 총 3가지이네요 (AWS, GCP, Azuer)
3. 다음 어떤 리전에 배포할지 설정
- 저는 한국에 살고 있으니, 한국에
- 완전 처음 나왔을 때는 없었는데, 업데이트되면서 생겼음 크크
4. 그리고, 설정하고자 하는 클러스터의 이름 입력
5. 마지막으로 하단에, Create 클릭하면
끝
데이베이스, 보안 설정
자, 데이터 베이스 생성을 하시면
보안 설정에 관련된 화면이 이어서 나옵니다.
여기도 차근차근 입력해서, 해보도록 하겠습니다.
1. 데이터 베이스 접근 계정 생성
- 원하시는 계정 이름, 비번을 사용하세요
- 이거는 나중에 접속하실 때 필요해요
2. 방화벽 접근 설정
- IP 주소 기준으로 접근 허용 해주는 네트워크 보안 설정입니다.
- Add My Current IP Address 하시면, 현재 접속 중이 PC 기준으로 자동으로 IP를 부여합니다. (하지만 다른 곳에서 이동해서 접속하시면 안 되겠죠?)
- 저는 테스트를 위해서 0.0.0.0으로 설정했습니다. (어디서든 접근이 가능하도록)
3. 클릭하고 마무리
그럼 이렇게 두둥 잘 생기는 거 확인이 가능할 거예요.
MonogDB 접속해서 확인 및 사용하기
생성, 보안, 계정 설정까지 다했으니까 이제 접속해서 사용이 잘되는지 해보도록 하겠습니다.
1. Connect 클릭을 하면
2. 원하는 Connect 정보의 종류를 선택해서 쓰시면 됩니다.
- 음 저는 일단 Compass로 해볼게요
3. MongoDB는 친절하게 툴 설치까지 준비돼있네요,
- 저는 설치돼있으니 주소만 따서 연결을 해보겠습니다.
4. Compass Connection에 아까 접속 주소를 입력해서 Connect 실행
- 이때, 아까 생성한 계정, 비번을 입력해서 연결해 주는 센스 필요합니다.
5. 그럼 이렇게 잘 생성해서 접속된 화면을 보실 수 있어요.
-"test"라는 데이터베이스, test_001 컬렉션 생성도 잘됩니다.
여기까지가, 오늘 마무리입니다.
느낀점은, 일단 공짜 개이득
그리고, 직접 설치해서 오픈소스로 사용했던 유저로서
이건, 너무 편해서 사기적...
관리 포인트를 줄 있을 수 있고, 생산성도 올라가서 업무적으로 편해지는 부분이 있네요.
글 잘 보시고, 도움이 되셨으면 좋겠습니다.
오늘은 여기서 이만 인사드립니다.
'Dev Story > MongoDB' 카테고리의 다른 글
Python을 활용한 MongoDB 인덱스 생성 방법: 빠른 검색과 쿼리 성능 최적화 (0) | 2023.04.11 |
---|---|
MongoDB 6.0에서 추가된 Time Series Collection 생성부터 조회까지 (1) | 2023.03.21 |
Step-by-step guide : How to Configure MongoDB Replica Set in Ubuntu (0) | 2023.03.15 |
Mastering MongoDB: A Guide to Commonly Used Commands (0) | 2023.03.15 |
Python MongoDB connect ( 연결하기 ) (0) | 2023.03.09 |
- Total
- Today
- Yesterday
- frontend
- EC2
- docker
- Docker 관리
- AI
- 딥러닝
- MongoDB
- ML
- Containerization
- python
- ChartGPT
- nestjs
- 클라우드
- Redis
- 티스토리
- GPT
- ubuntu
- 따라하기
- svelte 따라해보기
- AWS
- 한식
- lambda
- DevOps
- 따라해보기
- svelte
- 실습
- typescript
- 개발이야기
- cloudcomputing
- 쉽게따라하기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |