'couchDB'에 해당되는 글 2건

  1. 2011.08.04 couchdb/couchbase & mongodb ...
  2. 2011.07.10 멤베이스 설치/빌드하기 (Install/Build Membase) (1)
DB2011. 8. 4. 00:29
 



 nosql 분야의 major 로 떠오른 couchdb 와 mongodb. 사용 용도에 따라 여러가지 차이점이 존재한다.
 일단, mongodb가 traditional db의  lock-model를 표방하는 반면, couchdb는 MVCC의 cluster 기능을 지향한다. 그리고 couchdb 가 mongodb 에 비해 유사 기능에 대한 처리가 느리다는 것이 일반적인 평이다. 물론 이건 비교 기준 자체에 따라서 천차만별이겠지만, 구글링의 기사를 훑어본 바에 의하면...그렇다. 이 평가 요소에서 erlang과 c++ 라는 개발 언어에 대한 평도 있었다. 일단 mongodb 가 boost 기반의 c+ 개발 요소로 구성한 것은 여러 장점을 내포하고는 있지만, 개발 언어로 성능을 평가하는 것은 논외 대상이 아닐까 본다...흠, 하지만  bson 지원은 성능상 메리트가 많기는 하다... 허지만 couchdb 도 memcahced 의 기능을 포함하는 membase 를 couchbase 의 일부로 삼아서 진화(?)하고 있다. (이미 진화했다)
 그렇다. nosql의 진화는 아직 종료가 아닌 것이다. 진화 중이다. 그것은 기존 sql 의 분야와 이외 분야를 섭렵해서 선택과 집중에 의한 진화를 꾀하고 있는 것이다....쩝... 물론 둘다 기본적인 replication은 물론이고 cluster 기능의 확장도 하고 있어서, 클라우드 환경에도 적합하다. 10gen에서는 mongodb의 문서화 작업에도 노력하는 편인데, 벌써 두권의 서적이 존재하며, 한권은  한글 번역이 되기도 하였다!! (초심자들에게 한글 번역 서적은 매우 merit가 있다!!) couchdb 는 couchbase 라는 오픈 소스 그룹을 구축중인데, 이에 참여하는 스폰서들이 10gen 쪽만큼이나 화려하다!! (국내에 오픈 소스 투자 업체는 nhn, daum 정도이다. 삼성,엘쥐는 납땜회사이면서 자체 플랫폼 만든다고 허부적되고 있지만, 전통적으로 주요 경영진이 하드웨어 마인드를 보유하고 있으므로 오픈 소스 투자는 희망없을 것이다....)
 어쨌든, 이젠 전산계(?)에 입문하는 초보들에게는 양쪽 모두 국내에 가능성있는 업체이자 오픈소스 그룹인지라, 관심도를 갖는 것도 좋을 것이다. (이런 얘기하기는 거시기하지만,, 국내 패키지 업체는 오픈 소스 정책도 없으며 언제 망할 지도 모른다. 과감하게 미국 것을 공부하라. 결국 귀하의 포트폴리오에 한줄 도움되는 것은 Oracle, Microsoft DBA 등의 수식어일 것이다...왠지 술퍼지지만 현실은 그렇다,,,)
 그리고 의외로 이것들을 활요하는 틈새 시장이 많다. 벌써 nosql 용 gui 툴들에 대한 상업 버전이 경쟁을 할 정도이다. oracle 있는 곳에 두꺼비가 기생 성장(?)했듯이, 여러분의 앱도 틈새 시장의 미래를 볼 수 있지 않겠는가?!?!      

'DB' 카테고리의 다른 글

DBCLI  (0) 2019.11.05
MongoDB Standardalone (uniform server)  (0) 2012.03.06
couchdb/couchbase & mongodb ...  (0) 2011.08.04
Membase 서버의 기본 네트워크 소켓 포트  (0) 2011.07.19
멤베이스 설치/빌드하기 (Install/Build Membase)  (1) 2011.07.10
EA + DBMS 구성하기  (0) 2009.06.01
Posted by 어쩌다보니 Jay Two

댓글을 달아 주세요

DB2011. 7. 10. 19:31

 

(원문 : http://www.couchbase.org/wiki/display/membase/Building+Membase+on+Linux+From+Source)

(글 번역도 영어이고, 쓸데없는 내용도 많기에 중간 생략을 하며, 편의상 글도 높임말보다 이래하기 편한 평문으로 구성한다.)

 

membase 는 couchbase 에서 지원하는 memcached의 cluster 버전이다. 라이선스는 현재 아파치 2 라이선스를 적용 중이다. Couchdb 와의 기능을 써도 되지만 안 써도 되는 구조이며, couchbase에서 제시하는 이상적인 사용 전략은 당연히 RDMS à NoSQL à CouchDB 와 cluster/middleware à Membase 이다. 하지만 사용자 취향과 능력에 따라 섞어 짬뽕으로 써도 된다. 실제 membase 의 스폰서 중하나인 nhn도 자체 memcached 클러스터 버전인 arcurs 등을 개발하여 사용한다.

설치본은 community 용은 무료로 설치본을 제공하며, 기업용은 연락처 제시 후 다운로드가 가능하다. 기본 지원으로 redhat rpm, debian deb, windows, mac os x 를 지원한다. (http://www.couchbase.com/downloads/membase-server/community)

물론 소스 코드를 받아서 직접 빌드도 가능하며, 아래는 직접 빌드 방법을 기술한다.

일단 다운로드 싸이트에서 membase-server_src-1.7.0.tar.gz 를 받는다. (현재 1.7임. 1.6.x 도 존재한다.)

 (1) Ubuntu Ubuntu 11.04 사용 시,

# sudo apt-get install erlang libicu-dev libevent-dev libcurl3-dev g++ gcc binutils

…로 필요한 것을 설치함. Couch 계열이 기반 언어가 얼랭이며, memcached를 위해서 libevent는 필요하다. Curl 도 사용하므로 설치 해준다.

 (기본 설치는 /opt/membase/ 에 설치된다.)

(2) Cent OS 5.4 사용 시,

# yum install libevent-devel curl-devel gcc-c++ g++ gcc make

…얼랭 없으면 그것도 설치할 것…

(3) Mac os x

….요건 좀 짜증나는 해설인데,, 거의 알아서 깔아야 한다. MacPorts 등을 이용해서 설치를 하는 방법도 있을 것 같다. (이건 실험 못 해봤음)

(여담으로 본햏도 snow leopard 를 사용하지만, 누가 대용량 서버에 가격대 성능비가 비싼 애플 서버로 도배하것는가?! 99.9%는 리눅스 서버에서 사용할 목적일 것이다. 맥에서 빌드는 그냥 nothing but mac 인 사람에게만 해당된다고 보면 될 듯하다. 이것도 기냥 설치본[기냥 단일 응용 프로그램이다.]을 받아서 깔아서 테스트해보라…)

http://packages.couchbase.com/releases/1.7.0/Membase-Server-Community-1.7.0.zip

 (4) Windows

…mingw, cygwin 등이 먼소리인지도 모르겠다면, 당연히 pre-built 버전을 받아서 설치하라.

http://packages.couchbase.com/releases/1.7.0/membase-server-community_x86_1.7.0.setup.exe

(백신 v3가 있으면 경고를 띄우는데, 신경쓰지 말고 진행하도록 하자 K )

membase는 cluster 와 databse 연동 등도 고려한 구조이기에 memcached 보다는 휠씬 구성이 복잡하다. 따라서 빌드 & 설치가 어려운 사람은 community 버전 것으로 설치하도록 하자.

정상설치 후, 웹 브라우저로 http://서버주소:8091 를 연결하면 membase 구성이 가능하다. 단일 구성도 가능하고, 클러스터 구성도 가능하다. 또한 기존 memcached 만을 사용하는 것도 가능하고, membase 의 주요 컨셉 중 하나인 vBucket 구성도 가능하다. 취향에 맞춰서 구성하도록 하자.

설치 후 테스트는 아래과 같이 텔넷에서 입력 후, 출력도 아래와 같이 나오는 지를 확인해 보면 된다.

$ telnet localhost 11211

set some_greeting 0 0 5

hello

STORED

get some_greeting

VALUE some_greeting 0 5

hello

END

모든 과정이 끝났으면, 이젠 membase 만의 고유 architecture 이해와 클라이언트 개발 방법(전략 및 api )이해로 넘어가면 된다…


Posted by 어쩌다보니 Jay Two

댓글을 달아 주세요

  1. 지나가다

    안녕하세요, 지나가다 membase 설치 관련 글 보고 문의 드립니다.
    최초 설정할때 8091 포트로 접속해서 설정을 해야 하는데요..
    혹시 포트를 변경할수도 있을까요 ^^
    8091이 방화벽으로 막혀 있는 환경이라.. 변경이 가능한지 문의 드려요~

    2012.03.08 15:53 [ ADDR : EDIT/ DEL : REPLY ]