MongoDB 개념 정리

지수 🤓·2020년 7월 6일
1

개념 정리

목록 보기
17/17

NoSQL

관계형 데이터베이스가 아닌 SQL
클라우드 컴퓨팅 환경에서 발생하는 빅데이터를 효과적으로 저장, 관리하기 위해 나온 기술

장점

  • 클라우드 컴퓨팅 환경에 적합하다.
    유연한 시스템 설계가 요구되어지는데 그 목적을 달성하기 위해서는 기업 환경에 맞게 수정할 수 있는 오픈소스여야 좋다.
  • 유연한 데이터 모델을 구축할 수 있다.
    기존의 RDB는 정규화라는 정형화된 데이터 구조로 설계되기 때문에 데이터의 중복을 제거하고 무결성을 보장 받을 수 있지만 불필요한 테이블 개수를 증가시키고 조인 문장을 작성하게 함으로써 성능을 저하시키는 원인이 되기도 한다.
    NoSQL은 비정형화 데이터 구조로 설계되기 때문에 조인을 피할 수 있고 효과적인 관리와 빠른 성능을 보장 받을 수 있다.
  • 빅데이터 처리에 효과적이다.
    메모리 매핑 기술로 구현되기 때문에 일반적인 관계형 데이터베이스보다 빅데이터에 대한 읽기, 쓰기 작업이 빠르며 무엇보다도 기존의 OS와 HW에 그대로 구현할 수 있기 때문에 유연성과 확장성이 좋다.

MongoDB

  • JSON 타입의 데이터 저장 구조를 제공한다.
    데이터 표현 방법 {필드명 : 데이터 값}
  • Sharding(분산), Replica(복제) 기능을 제공한다.
  • MapReduce(분산, 병렬처리) 기능을 제공한다.
  • CRUD 위주의 다중 트랜잭션 처리도 가능하다.
  • 메모리 매핑 기술을 기반으로 빅데이터 처리에 탁월한 성능을 제공한다.

용어

  • Table -> Collection
  • Row -> Document
  • Column -> Field
  • Primary Key -> Object_id field
  • Relationship -> Embedded & link

출처 [MongoDB Master가 해설하는 New NoSQL&MongoDB]

profile
Backend Junior Developer

0개의 댓글