Introduction to MongoDB

몽고디비는 document기반의 오픈소스 데이터베이스로 뛰어난 성능, 사용성, auto scaling을 제공합니다.

Document Database

몽고디비는 키와 값의 구조로 이뤄진 document 형태로 저장이 됩니다. 몽고비디의 document는 JSON객체와 매우 유사합니다. 각 필드의 값은 다른 documents, array, documents로 이뤄진 array로 구성이 될 수 있습니다.

document형식으로 데이터를 저장하는데에는 몇가지 이점이 있습니다.

  • Document(예, objects)는 다양한 프로그래밍 언어의 원시형 데이터 타입입니다.
  • 내장(Embeded) documents나 array를 통해서 비싼 비용의 조인 작업을 줄일수 있습니다.
  • Dynamic schema를 통한 풍부한 데이터 형태의 표현이 가능합니다.

Document Database

High Performance

몽고디비는 높은 성능의 데이터지속성을 제공합니다. 특히 다음의 경우에 유용합니다.

  • 내장(Embeded) 데이터 모델은 데이터베이스 시스템의 I/O활동을 감소시킵니다.
  • Index를 통해 빠른 쿼리와 keys 를 내장 document와 array에 추가 할 수도 있습니다.

Rich Query Language

몽고디비는 풍부한 쿼리 표현을 제공합니다.

High Availability

replica set이라고 불리는 몽고디비의 replicatoin은 다음의 기능을 제공합니다.

  • automic failover (특정 노드에 결함이 발생하면 다른 노드가 대신 작업을 수행한다.)
  • data redundancy

replica set은 몽고디비의 서버그룹으로 동일한 데이터 모음을 제공하여 데이터의 신뢰성(redudancy)와 높은 데이터의 가용성을 제공합니다.

Horizontal Scalability

몽고디비는 수평적 확장 (horizontal scalibility) 를 제공하고 다음의 핵심기능을 제공합니다.

  • Sharding 머신들 간의 데이터 분산
  • 몽고디비 3.4 부터는 shard key기반의 zones을 생성합니다. 균형있는 클러스터 내에서 몽고비디는 읽기와 쓰기작업을 해당 shard의 zone에 직접 접근하여 작업하도록 합니다.

Support for Muliple Storage Engines

몽도디비는 다양한 저장엔진(storage engines)을 제공합니다. 예를들면

  • WiredTiger Storage Engine
  • MMAPv1 Storage Engine

이외에도 다양한 외부 엔진API를 추가 할 수가 있습니다.

results matching ""

    No results matching ""