본문 바로가기

Database/Nosql

(5)
mongodb Replica Set replica set(이하 리플리카셋)은 여러 대의 서버에 원본을 복사해 두고,장애가 발생시 자동으로 장애 이외의 디비 중 하나를 선택하여 원본 디비처럼 사용할 수 있도록 있습니다. 이로 인해 서비스를 끊기지 않고 지속적으로 유지할 수 있습니다. 리플리카셋에서 첫번째 입력을 담당하는 서버를 primary 서버라 부르며 그밖의 서버를 secondary 서버라 부릅니다. 프라이머리 서버는 세컨더리 서버를 2초 마다 상태 체크하여 데이터 동기화를 하기 위해 HeartBeat(일종의 ping 확인)를 확인합니다. 이때 세컨더리서버가 사용할수 없더라도 프라이머리 서버는 살아있으므로 서비스는 유지 됩니다. 만일 프라이머리 서버에 이상이 생길 경우 세컨더리서버 끼리의 선거를 통해 프라이머리서버를 선출하여 작동하게 됩..
mongodb sharding mongodb sharding( 이하 샤딩으로 표기) 은 mongodb끼리의 데이터 복제함으로서 다른 서버와의 동기화 및 빅데이터를 저장하기 위해서 분산 저장을 하는것이 샤딩의 목적입니다. 샤딩은 mongodb 두대로도 가능하지만 최소 3대를 권장하며, 실질적인 데이터 복제가 아닌 mongodb내의 oplog에 의한 명령어를 복사/ 실행함으로서 데이터를 유지합니다. 여기서는 한 컴퓨터에서 서버를 3대를 실행합니다.먼저 저장소가 서로 다르게 되어야 하므로 폴더를 따로 만들어 줍니다.$ mkdir shard1 shard2 shard3 $ sudo ./mongod -shardsvr -dbpath /data/shard1 -port 40001$ sudo ./mongod -shardsvr -dbpath /data/..
mongodb 기본 CRUD 1. insert (save)> db.scores.save({num:99}); db.scores.save({num:99}) -> scores 콜렉션에 num:99 를 넣으시요. 데이터 확인 find()> db.scores.find(); db.scores.find(); -> scores 콜렉션에 있는 모든 데이터를 가져오시오. > for(i=0; i db.scores.find(); 2. Read (find) > db.scores.find({num:0});db.scores.find({num:0}); -> num이 0인것을 찾으시오_id는 mongodb가 각각의 데이터에 부여하는 객체 id 값 입니다. (고유값) 해당 id로 찾기 위해선 objectid 로 변환해줘야 합니다. > db.scores.find( ..
mongodb 기초 쿼리 상세하게 쓸려고 미친듯이 포스팅을 했으나.... 사이트에서 제공하는 예제보다 잘할 자신이 없어서 포기.... http://docs.mongodb.org/manual/reference/sql-comparison/ 정말 잘 나왔으니 한번씩 따라해보세요.
초간단 ubuntu 에 mongodb 설치하기 초간단! 우분투에 mongodb 설치 하기 입니다. 1. 다른 패키지 설치 처럼 apt-get명령어로 설치 가능합니다.$ sudo apt-get install mongodb 2. 엄청 많은 패키지들이 필요하군요.. 설치를 계속 할것인지 묻습니다.당연히 Y 3. 쭉쭉 설치가 되다가 mongodb statr/running 라는 말이 나옵니다.정상적으로 작동하는군요. 설치 완료입니다.ㅎ 참쉽죠? 4. mongodb 를 실행하고 싶다면 mongo명령어를 실행하면됩니다.$ mongo -이제부터가 mongodb의 시작입니다.