최근 바뀜
통계
임의의 문서로
도움말
문서
토론
원본 보기
역사 보기
로그인
몽고DB 문서 원본 보기
내위키
←
몽고DB
이동:
둘러보기
,
검색
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
[[JSON]] 방식 문서 기반의 [[NoSQL]] 데이터베이스. 2007 10gen에서 개발을 시작해서 2009년에 오픈소스로 공개되었고, 10gen은 아예 회사 이름을 MongoDB Inc.로 바꾸었다. 완전 무료인 커뮤니티 에디션과 유료 지원을 받을 수 있는 엔터프라이즈 에디션 두 가지로 나뉜다. [[NoSQL]]이라는 말이 뜻하는 것처럼 [[관계형 데이터베이스]]가 아니다. 일단 테이블이 없다. 관계형은 기본 구조가 [[데이터베이스]] → 테이블이라면 몽고DB는 데이터베이스 → 컬렉션으로 되어 있다. 이 컬렉션을 테이블과 같은 것으로 생각하기 쉽지만 개념이 많이 다르다. 예를 들어 컬렉션이 컬렉션을 품을 수도 있다. 이는 관계형에서 테이블이 다른 테이블을 외래 키로 참조하는 것과는 많이 다르다. 또한 [[NoSQL]] 답게 스키마의 일관성을 강제하지 않아서 데이터 구조가 굉장히 유연하다. 관계형 [[데이터베이스]]는 테이블을 일단 짜 놓고 데이터가 쌓이면 이 구조를 고치는 게 좀 까다로운 반면, 몽고DB는 그야말로 막 할 수 있다. 예를 들어, 어떤 컬렉션에 새로운 문서를 하나 집어넣으면서 전에는 정의되어 있지 않던 키를 쓸 수도 있다. 그렇다고 기존의 컬렉션에 있던 문서에 이 키가 전부 생기는 것도 아니다. 정형화 되지 않은 데이터가 폭발적으로 늘어나는 [[빅데이터]] 시대가 되면서 다른 [[NoSQL]] 데이터베이스와 함께 급부상하고 있다. 반면 금융 거래와 같이 데이터의 안전성이나 정확히 절대 중요한 분야에는 적합하지 않다. 모든 데이터는 [[JSON]] 형식으로 입출력되며, 이를 '문서'라고 한다. JSON이 [[자바스크립트]] 쪽에서 나온 것인 만큼 [[자바스크립트]]와 궁합이 좋다. 물론 [[루비]], [[PHP]]를 비롯한 어떤 언어에도 붙여 쓸 수 있지만 [[Node.js]]에 붙여서 쓰는 [[NoSQL]] 데이터베이스로는 가장 많이 쓰이고 있다. 일단 [[하둡]]이나 [[카산드라]] 같은 다른 [[NoSQL]] [[데이터베이스]]에 비해서 진입장벽이 낮고 [[자바스크립트]]를 알고 있으면 [[JSON]]도 능숙하게 다룰 수 있기 때문. 아예 [[자바스크립트]] 언어 한 가지로 프론트엔드-백엔드-[[데이터베이스]]까지 퉁칠 수 있는 대표 기술들을 [[MEAN 스택]]으로 묶어서 웹 개발 플랫폼으로 사용한다. 자세한 것은 해당 항목 참조. 몽고DB 데이터 질의가 간단한 건 정말 단순해 보이지만 질의문을 무조건 [[JSON]] 형태로 만들어야 하기 때문에 조금만 복잡해지면 [[SQL]]과는 비교도 안 되게 알아보기 힘들어진다. 이를 보완하기 위해서 몽구스를 많이 쓴다. [[Category:데이터베이스]]
이 문서에서 사용한 틀:
틀:각주
(
원본 보기
)
몽고DB
문서로 돌아갑니다.
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
특수 문서 목록
문서 정보