MongoDB 특징
by 뚜부니"MongoDB는 NoSQL 데이터베이스 중 하나이다" 말고는 잘 모르는 것 같아서 MongoDB에 대해 정리해보았어요.
MongoDB란
MongoDB는 문서 지향(Document-Oriented) 데이터베이스로, JSON과 유사한 BSON(Binary JSON) 형식의 문서를 저장하고 관리해요. MongoDB는 테이블과 스키마에 기반한 전통적인 관계형 데이터베이스와 다르게 유연한 데이터 모델을 제공하여 다양한 형태의 데이터를 효율적으로 처리할 수 있게 해줘요.
주요 특징
- 유연한 스키마
- 스키마리스(Schema-less) 구조 지원
- 각 문서(레코드)가 서로 다른 필드와 구조를 가질 수 있음
- 데이터 모델의 유연한 변경 및 확장 가능
- 고성능과 확장성
- 수평적 스케일링 지원
- 샤딩(Sharding)을 통해 대용량의 데이터를 효율적으로 처리
- 인메모리 성능 향상을 위한 인덱싱과 복제(Replication) 기능 제공
- 고가용성과 데이터 안정성 확보
- 강력한 쿼리 언어
- 풍부한 쿼리 언어 제공
- CRUD(Create, Read, Update, Delete) 작업뿐만 아니라 집계 프레임워크를 통한 복잡한 데이터 분석도 가능
- 다양한 언어와 플랫폼 지원
- JavaScript, Python, Java, C#, Node.js 등 다양한 프로그래밍 언어용 공식 드라이버 제공
MongoDB의 구성 요소
- 데이터베이스
- 여러 컬렉션(Collection)으로 구성
- 관계형 데이터베이스의 데이터베이스와 유사
- 컬렉션
- 유사한 성격의 문서들의 집합
- 관계형 데이터베이스의 테이블과 비슷하지만 스키마를 강제하지 않음
- 문서
- BSON 형식의 데이터 구조
- 필드와 값의 쌍
- 각 문서는 고유한 _id 필드를 가지며, 이를 통해 문서를 식별
MongoDB의 장점
- 유연성: 스키마리스 구조로 데이터 모델의 유연성이 높아, 변경 사항에 빠르게 대응할 수 있음
- 확장성: 수평적 확장을 지원하여 데이터 증가에 유연한 대처 가능
- 고성능: 인덱싱과 인메모리 기술을 활용하여 빠른 데이터 처리와 응답 시간 제공
- 풍부한 기능: 강력한 쿼리와 집계 기능, 복제와 샤딩을 통한 고가용성 지원 등 다양한 기능 제공
참고
'DB > MongoDB' 카테고리의 다른 글
docker-compose로 MongoDB 설치하기 (0) | 2024.11.17 |
---|
블로그의 정보
개발하는 두부
뚜부니