Skip to content

MongoDB

Jongchan_Choi edited this page Jun 13, 2024 · 2 revisions

도입 배경

데이터 가시성을 위해 대시보드에 각 프로젝트의 상태를 그래프로 시각화하기로 결정했습니다.
프로젝트마다 서로 다른 4개의 그래프가 필요하며, 각 그래프의 유형이 다르기 때문에 요구되는 데이터의 형식과 양이 모두 상이했습니다.

도입 이유

기존의 mariaDB를 사용할 수도 있었지만, MongoDB를 도입하기로 결정한 이유는 다음과 같습니다.

  1. 다양한 데이터 구조의 유연한 처리
    관계형 데이터베이스와 달리 스키마리스 구조를 이용해 다양한 데이터 형식을 자유롭게 저장할 수 있습니다. 이를 통해 각 그래프가 필요로 하는 데이터 구조를 자유롭게 설계하고 저장할 수 있었습니다.
  2. 데이터 정합성 유지 및 성능 향상
    다양한 데이터 소스를 통합할 때, 관계형 데이터베이스에서는 조인 연산을 통해 이를 해결할 수 있지만, 복잡성과 성능 저하의 문제가 발생할 수 있습니다. MongoDB는 중첩 문서 구조를 통해 한 문서 내에서 관련 데이터를 모두 포함할 수 있습니다. 이를 통해 데이터 정합성을 유지하면서도 복잡한 조인 없이 성능을 최적화할 수 있습니다.
  3. 확장성과 유연성
    스키마를 자유롭게 변경할 수 있어, 프로젝트의 요구사항이 변할 때 빠르게 대응할 수 있습니다. 또한 수평 확장이 용이하여 데이터가 증가하더라도 시스템을 쉽게 확장할 수 있습니다.

Clone this wiki locally