ෆ ⋆ ₊ ゚ ☽ * ₊ ⋆

카테고리 없음

[CS] MongoDB란?

우당탕가윤 2024. 4. 2. 20:56

오늘은 데이터베이스 종류 중 하나인 MongoDB에 대해 알아보자!


목차

  1. MongoDB 개념
  2. MongoDB 특징
  3. MongoDB vs MySQL
  4. MongoDB 사용 사례

01. MongoDB의 개념

MongoDB는 NoSQL 데이터베이스로, 관계형 데이터베이스와는 다른 유연한 모델을 제공한다.

  • 문서: MongoDB의 기본 단위, JSON 형식으로 데이터를 표현
  • 컬렉션: 문서의 그룹으로, 관련된 문서들을 함께 저장
  • 동적 스키마: 사전에 정의하지 않고도 데이터 저장 가능

 

02. MongoDB만의 특징

  • 유연한 데이터 모델: 다양한 유형의 데이터를 저장할 수 있어 데이터 구조를 쉽게 조정하고 확장할 수 있다.
  • 확장성: 수평적으로 확장이 가능한 아키텍처를 가지고 있어 대규모 데이터 처리에 적합하다. 클리스터를 구성하여 데이터베이스 용량을 증가시키고 처리량도 늘릴 수 있다.
  • 높은 가용성: 자동으로 데이터 복제를 지원하며 시스템의 가용성을 높일 수 있다. 또한 장애 발생 시에도 데이터의 손실 없이 서비스를 계속할 수 있다.

03. MongoDB vs MySQL

  MongoDB MySQL
데이터 모델 데이터를 JSON 문서에 저장한 다음 컬렉션으로 구성 데이터를 열과 행에 저장, 테이블 형식, 관계형
확장성 복제와 샤딩을 사용하여 수평적으로 확장 수직 확장과 읽기 전용 복제본을 사용해 대규모로 성능을 개선
쿼리 언어 MongoDB 쿼리 언어 사용 SQL 사용
성능 많은 수의 레코드를 삽입하거나 업데이트하는 데 탁월 많은 수의 레코드를 선택할 때 더 빠름
유연성 스키마가 없으므로 유연성 향상, 비정형, 반정형, 정형 데이터와 함께 작동 가능 정형 데이터와 함께 잘 작동하는 엄격한 스키마 존재
보안 Kerberos, X.509, LDAP 인증서를 사용하여 사용자 인증 내장된 인증 방법 사용

 

 

04. MongoDB의 사례

  • 모바일 애플리케이션
  • 실시간 분석: 
  • 컨텐츠 관리 시스템
  • 엔터프라이즈 데이터 웨어하우스