zookeeper 정리중

|
zookeeper
# zookeeper start/stop
bin/zkServer.sh start
bin/zkServer.sh stop

# zookeeper 연결
bin/zkCli.sh -server localhost:2181

# znode 생성및 조작
create /zk_test my_data
get /zk_test
set /zk_test junk
delete /zk_test

# zookeeper 를 replicated환경으로 운영하기
replicated group of server를 quorum 이라고 부른다
모든 quorum안의 server는 같은 configuration file을 갖는다

zoo.cfg 설정
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=zoo1:2888:3888
server.2=zoo2:2888:3888
server.3=zoo3:2888:3888

ticktime : timeout 시간
initLimit : connection timeout (실제 시간은 initLimit * tickTime)
syncLimit : leader와의 시간차의 max (실제 시간은 syncLimit * tickTime)
server.1=host:2888:3888 : 첫번째 port은 peer 끼리 통신하는데 사용
 두번째 port는 leader를 선출할때 사용하는 port

And

couchbase 의 license

|
licensing policy로 enterprise와 community 버전을 따로 만들어놨네
자세한 license policy는 요 페이지를 확인해보면될듯
 http://www.couchbase.com/products-and-services/Couchbase-support 
요약하자면 enterprise 버젼은  개발환경에서는 무료지만 production환경에서는 2개의 node까지만 free로 사용해야한다는것
community 버젼은 맘대로 사용해도 되는듯.
이래서 couchbase는 인기가 떨어지는거였구나 (몬가 반쪽짜리 free software네. mongodb의 경우는 10gen에서 직접 support해주는데에
대해서만 fee를 받는거랑 틀리네)
community 버젼은 latest, greatest, bleeding edge 라고 되어있으니 trunk버전정도인듯하다.
음 membase server 에서 이름도 couchbase server로 이름이 2.0에서 바뀌는듯한데
이녀석들은 몬가 네이밍 정책도 헛갈리고..영 그렇네.

나의 짧은 지식으로는  membase server는 memchaced(key-value : NoSQL) + disk persistency + cluster management 인 버젼이라고 생각하면될거 같고
couchbase server 2.0으로 가면서 couchdb + GeoCouch + memchaced(key-value : NoSQL) + cluster management 인 버젼이 아닐까 생각된다.

그냥 1.7.2 버젼에서 올라가면서 membaser server에서 couchbaser server로 이름을 바꾼거 같다. 여기서 말하는 key-value NoSQL 이라는것도
document base가 되는거 같기도하고... value가 json을 지원해서인건지...영 헛갈리네. 모 혀재로는 couchdb + memcached + cluster management 라고 생각해야할 듯
5분 동영상을 보니 mongodb에 비해서 탁월한 UI와 사용성의 관리 툴을 제공하는거 같다.
mongodb의 관리툴은..모.....third party것을 쓰거나 그쪽에서 제공하는 saas 를 이용해서 상태를 모니터링하는정도인거 같은데
서비스 환경의 db를 saas형태로 상태 모니터링하는건 좀 아닌거 같다....

mongodb는 주는 document oriented + auto sharding + easy scale out 이고 부로 map reduce인거 같았는데 (데이터가 적으면
map reduce가 괜찮은 성능을 보이지만 데이터가 많아지면.. 약간...좀...또한 sharded 환경에서의 reduce 옵션의 M/R에는 버그가
좀 있는 거같다)
couchbase server는 어떨지 궁금하다. 
일단 사용해봐야겠다 ㅋㅋㅋ 
And

movechunk 시에 can't find index in storeCurrentLocs 에러처리

|
일반적으로 moveChunk 명령어에서 사용되는 find에 들어간 key에 대한 index가 없어서 생기는 문제이다
해당 key에 대해서 오름차순으로 index를 만들어줘야함

예 :  db.runCommand( { moveChunk : "test.blog.posts" , find : { author : "eliot" } , to : "shard1" } )
이경우에는 index에 ensureIndex ({'author': 1}) 있어야함
And
prev | 1 | 2 | 3 | 4 | 5 | ··· | 21 | next