관리 메뉴

HAMA 블로그

MongoDB vs Couchbase (2) 본문

NoSQL

MongoDB vs Couchbase (2)

[하마] 이승현 (wowlsh93@gmail.com) 2015. 9. 3. 14:59


MongoDB vs. Couchbase  (2)


 

Couchbase 의 문서는 JSON 인 반면  MongoDB 문서는 BSON 이다. 표기법은 많은 32비트 , 64비트 Integer 타입, 날짜타입, 바이트배열등을 포함한다. 양쪽은 모두 위치분석 데이타/쿼리를 지원하는데 카우치베이스는 아직 실험중이며 곧 완성될것이다. 2.4 새 몽고디비 버전에서는 풀 텍스트 검색이 포함되었으며 카우치베이스는 유사한 기능이 있는데 elasticsearch 플러그인이 필요하다.


카우치베이스와 몽고디비는 둘다 복제를 통한 데이타 안전을 제공하며, 둘다 클러스터링을 한다. 또한 둘다  샤딩을 통한 병렬접근을 제공한다. 카우치베이스와 몽고디비는 해쉬샤딩은 제공하는데 몽고디비는 범위샤딩 과 "태그" 샤딩도 제공한다. 이것은 양날의 칼인데 , 데이타베이스 관리에 유연함을 주는 동시에 오용은 클러스터에 밸런스를 깨지게하는 결과를 초래한다.


맵리듀스는 양쪽에 주요툴인데, 다른 목적으로 사용된다. 몽고디비에서는 일반적인 데이타 프로세싱, 정보집단화, 분석등을 위해 사용하며, 카우치베이스는 단지 데이타베이스를 쿼리하기위한 인덱스 생성용도로 사용한다. 그 결과 몽고디비가 인덱스 생성이나 애드혹 쿼리시엔느 좀 더 쉽긴하다.


카우치베이스는 메모리에 캐쉬하는것 (memcached) 이 장착되있는데,  몽고디비에는 대응되는것은 없다. Memcache 는  높은 처리량/데이타 집중 인터넷/ 인프라넷 어플리케이션 을 위해 오프젝트를 캐슁하는 시스템으로 강력하다. 만약 어플리케이션에서 Memcache 기능이 필요하다면 더 볼것도 없이 Couchbase 이다. 


두 시스템은  여러 유명 언어로 드라이버와 클라이언트 프레임워크를 제공하며 , 오픈소스이며 쉽게 인스톨할수있고 쉽게 온라인에서 문서를 찾을수있다. 


Couchbase Server vs MongoDB 

 

문서 조작 

Couchbase 는 2.0에서 원래 key/value 저장 아키텍처에서 문서형 특징을 추가 되었고  , MongoDB 는 원래 문서기반으로 디자인되었다. 몽고디비가  좀 더 개발되어졌다.

인덱싱 

Couchbase, 에서는 mapreduce 로 추가 인덱스를 만들어야하고 MongoDB, 에서는 개인적인 문서 필드에 인덱스를 추가할수있다. 몽고디비의 맵리듀스는 일반적인 프로세싱 용이다.

Memcached

Couchbase  는 Memcached 컴포넌트를 포함하며 , 문서저장용도와 독립적으로도 사용가능하며,  MongoDB 는 대응되는 부분이 없다.

샤딩 

Couchbase  는 hashed sharding 만 지원. MongoDB 는 hashed sharding 과  range sharding 지원.

Geospatial

MongoDB 는 geospatial 를 잘 지원하고 Couchbase 도 마찬가지인데 2.0 부터 추가되었고 발전중이다.


Comments