http://www.uniformserver.com/

http://sourceforge.net/projects/miniserver/files/Uniform%20Server/6.0.0-Carbo/MongoDB/standalone/

- 별도의 설치가 필요없이 실행만하면 되는 mongodb 입니다.
- windows에서만 됩니다.
- 단순한 테스트나 학습용 등의 작업이 필요하신 경우에 매우 용이합니다.
- 기본적으로 CLI 입출력이 제공됩니다.
- mongodb 1.4.4로 build 되었습니다.




 



 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 있는 곳에 두꺼비가 기생 성장(?)했듯이, 여러분의 앱도 틈새 시장의 미래를 볼 수 있지 않겠는가?!?!      

 

Membase 서버의 기본 네트워크 소켓 포트

Port

Purpose

Membase Server

Membase Client

Administration Client

8091

Web Administration Port

Yes

No

Yes

11211

Data Port

Yes

Yes

Yes

11210

Internal Cluster Port

Yes

No

No

4369

Erlang Port Mapper (epmd)

Yes

No

No

21100 to 21199 (inclusive)

Node data exchange

Yes

No

No

 

… 결론부터 이야기하면, 설정할 때는 8091 포트로 웹 브라우저에 의한 설정이 필요하지만, 어느 정도 구성 후에는 memcached default port 이기도 한 11211 포트로 소켓 통신을 하면 된다.

 

(원문 : 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 )이해로 넘어가면 된다…


  1. 지나가다 2012.03.08 15:53 신고

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


Sparx 시스템의 EA 는 중저가형 모델링 도구로 유용하다.
가격대 성능만을 보자면, 매우 현명한 선택을 가져다 주는 도구이다.
(기업형 시스템이 삼십만원선이니까...)
그런, EA는 DBMS를 연결함으로써 협업환경을 꾸밀 수 있다.
가능한 DBMS는 SQL Server, Oracle, MySQL, PostgreSQL 등이다.
(저가형 모델링 툴을 사용하는 조직이라면, 무료 DBMS 계열이 유용할 것이다...)

 [자세한 설정방법은 후에...]


 

 SQLIte 라이브러리를 사용시의 장점이라면 역시 컴포넌트 독립성일 것이다.
델파이 배포시 BDE 를 함께 배포하면서 문제가 생기거나,
MDAC 을 비주얼 베이직 프로그램과 배포시의 문제가 생기거나,
또는 ADO.NET 의 미묘한 버전 문제 등등등...
이런 문제가 일소된다. (당연히, DBMS 가 프로그램에 embed 되므로...)
 단점이라면...역시나 너무 부족한 기능...
아직은 아우터 조인조차 제대로 지원되지 않는 것이 현실이다.
하지만 그럼에도 불구하고 소규모와 최적화 불필요한 데이타 처리에는
이것만큼 괜찮은 것도 없다. (물론 XML 도 유사한 필요성일 경우에 사용 시 좋다...)

'DB' 카테고리의 다른 글

멤베이스 설치/빌드하기 (Install/Build Membase)  (1) 2011.07.10
EA + DBMS 구성하기  (0) 2009.06.01
SQLite 라이브러리 사용 시 장점...그리고 단점....  (2) 2007.07.24
SQLite Expert  (0) 2007.07.05
MySQL 백업 / 복구  (0) 2007.06.27
동일한 결과의 내부 조인  (0) 2007.06.27
사용자 삽입 이미지

SQLite Expert Personal Edition


http://www.sqliteexpert.com/


http://www.sqliteexpert.com/SQLiteExpertPersSetup.exe

SQLite 의 GUI 지원 유틸리티인 SQLite Expert 입니다.
물론 이런 SQLIte GUI 유틸은 많이 있습니다. (각자 취향에 따라서 사용하시면 될 듯합니다.)
Personal Edition 은 Freeware 로 제공됩니다.
(Professional 은 Trial 이군요, Lua 와 Pascal 스크립트 예제가 있답니다...-_-;)
그리고 현재 major SQLite 버전은 3.x 이지만 2.x 에서 작성된 DB 도 처리 가능합니다. (당3)
한글 메뉴 지원은 안 되고요,,,SQLite 의 문자열 기본 캐릭터셋이 UTF-8 이므로
한글 문자열 처리는 문제 없을 겁니다...
...그리고...물론 콘솔에서 DB 작업을 모두 하셔도 되지만, 복잡한 구조로 진행되다 보면
 Oracle 에서 TOAD 사용하시듯이 사용 않 할 수는 없을 겁니다...
(가뜩이나 코딩 시간도 부족한데 ㅎㅎ)

'DB' 카테고리의 다른 글

EA + DBMS 구성하기  (0) 2009.06.01
SQLite 라이브러리 사용 시 장점...그리고 단점....  (2) 2007.07.24
SQLite Expert  (0) 2007.07.05
MySQL 백업 / 복구  (0) 2007.06.27
동일한 결과의 내부 조인  (0) 2007.06.27
[소개] SQLite  (0) 2007.06.26

MySQL 데이터베이스 백업 :

 

mysqldump -h서버 -u사용자 -p암호 [백업할 테이터베이스 이름] > [저장할 파일 이름(*.sql )]

 

>> mysqldump -hlocalhost -uroot -ppassword testdb1 > testdb1-2007-06-27.sql

 

MySQL 테이블 백업 :

 

mysqldump -h서버 -u사용자 -p암호 [테이타베이스] [백업할 테이블 이름] > [저장할 파일 이름(*.sql)]

 

>> mysqldump -hlocalhost -uroot -ppassword testdb1 tbl1 > testdb1-tbl1-2007-06-27.sql

 

MySQL 데이터베이스 복구:

 

mysql -h서버 -u사용자 -p암호 [복구할 테이터베이스] < [저장된 파일]

 

>> mysql -hlocalhost -uroot -ppassword testdb1 < testdb1-2007-06-27.sql

 

 

'DB' 카테고리의 다른 글

SQLite 라이브러리 사용 시 장점...그리고 단점....  (2) 2007.07.24
SQLite Expert  (0) 2007.07.05
MySQL 백업 / 복구  (0) 2007.06.27
동일한 결과의 내부 조인  (0) 2007.06.27
[소개] SQLite  (0) 2007.06.26
SQL Server - (2) 왠만하면 사용하지 말아야 할 것...  (0) 2007.06.25

+ Recent posts