스케일 업(Scale Up) : 서버 성능을 올리는 것. CPU 증설, 램 Up~
스케일 아웃(Scale Out): 서버 대수를 늘리는 것.
샤딩(Sharding): 데이터 베이스의 수평확장(horizontal partitioning)의 일종. 일반적으로 한 테이블의 Row를 분산시키는 것. 요금테이블 -> 1월요금테이블, 2월요금테이블.. 등등으로 나눈다고 생각하면 간단합니다. 샤딩에 대해서는 조만간 따로 글을 올리도록 하겠습니다.
기사 내용자체가 원체 쉽게 잘 쓰여 있습니다만, 그래도 아래 내용을 먼저 보시고 읽어보시면 더 더욱 쉽게 이해되실 겁니다. :)
"MongoDB의 API는 JSON 오브젝트와 JavaScript 함수의 혼합체이다."
네. 그렇습니다. 따라서 콘솔상에서 자바스크립트 문법을 실행하는 것이 가능합니다.
doortts:~/Development/mongodb-osx-x86_64-1.8.0> ./bin/mongo
MongoDB shell version: 1.8.0
connecting to: test
var a=1, b=2;
a+b;
3
print ('hello mongo');
hello mongo
dW 기사의 mongodb 실행 명령어는 오타인듯 합니다. 아래와 같이 해야 정상실행됩니다.
./bin/mongod --dbpath ./data/db --vvvvvvv
기사에도 나오지만 mongodb는 document 기반 NoSql중 하나로 기본 데이터로 json 형식을 지원합니다.
@doortts (doortts) 님이 작성한 게시글입니다. ---
IBM DeveloperWorks에 올라온 기사 Java development 2.0: MongoDB를 좀 더 잘 이해하기 위한 보충설명입니다. :)
Java development 2.0: MongoDB: (적절한) RDBMS 이동 기능을 제공하는 NoSQL 데이터 저장소 http://www.ibm.com/developerworks/kr/library/j-javadev2-12/index.html
스케일 업(Scale Up) : 서버 성능을 올리는 것. CPU 증설, 램 Up~ 스케일 아웃(Scale Out): 서버 대수를 늘리는 것. 샤딩(Sharding): 데이터 베이스의 수평확장(horizontal partitioning)의 일종. 일반적으로 한 테이블의 Row를 분산시키는 것. 요금테이블 -> 1월요금테이블, 2월요금테이블.. 등등으로 나눈다고 생각하면 간단합니다. 샤딩에 대해서는 조만간 따로 글을 올리도록 하겠습니다.
기사 내용자체가 원체 쉽게 잘 쓰여 있습니다만, 그래도 아래 내용을 먼저 보시고 읽어보시면 더 더욱 쉽게 이해되실 겁니다. :)
"MongoDB의 API는 JSON 오브젝트와 JavaScript 함수의 혼합체이다." 네. 그렇습니다. 따라서 콘솔상에서 자바스크립트 문법을 실행하는 것이 가능합니다.
doortts:~/Development/mongodb-osx-x86_64-1.8.0> ./bin/mongo MongoDB shell version: 1.8.0 connecting to: test
dW 기사의 mongodb 실행 명령어는 오타인듯 합니다. 아래와 같이 해야 정상실행됩니다.
./bin/mongod --dbpath ./data/db --vvvvvvv
기사에도 나오지만 mongodb는 document 기반 NoSql중 하나로 기본 데이터로 json 형식을 지원합니다.
ticket = { officer: "Kristen Ree" , location: "Walmart parking lot", vehicle_plate: "Virginia 5566", offense: "Parked in no parking zone", date: "2010/08/15"}
tickets라는 컬렉션은 미리 지정해 놓지 않아도 위와 같이 명령을 쓰는 순간 만들어 집니다.
{ "_id" : ObjectId("4d92e8f3a9770dc9e1e6a027"), "officer" : "Kristen Ree", "location" : "Walmart parking lot", "vehicle_plate" : "Virginia 5566", "offense" : "Parked in no parking zone", "date" : "2010/08/15" }
{ "_id" : ObjectId("4d92e8f3a9770dc9e1e6a027"), "officer" : "Kristen Ree", "location" : "Walmart parking lot", "vehicle_plate" : "Virginia 5566", "offense" : "Parked in no parking zone", "date" : "2010/08/15" }
find를 이용해서 컬렉션 안의 데이터를 검색합니다. 삭제는 remove를 이용합니다. find때와 마찬가지로 정규식을 지원합니다. i 는 대소문자 무구분!
db.tickets.remove({vehicle_plate:/virginia/i});
다음은 Mongodb Java Driver를 이용해 만들어 본 데이터 입력에 대한 단위테스트 케이스 입니다.
import static org.junit.Assert.*;
import org.junit.*;
import com.mongodb.*;
public class MongodbTest {
}
(function(){ var corecss = document.createElement('link'); var themecss = document.createElement('link'); var corecssurl = "http://whiteship.me/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css?ver=3.0.83b"; if ( corecss.setAttribute ) { corecss.setAttribute( "rel", "stylesheet" ); corecss.setAttribute( "type", "text/css" ); corecss.setAttribute( "href", corecssurl ); } else { corecss.rel = "stylesheet"; corecss.href = corecssurl; } document.getElementsByTagName("head")[0].insertBefore( corecss, document.getElementById("syntaxhighlighteranchor") ); var themecssurl = "http://whiteship.me/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeRDark.css?ver=3.0.83b"; if ( themecss.setAttribute ) { themecss.setAttribute( "rel", "stylesheet" ); themecss.setAttribute( "type", "text/css" ); themecss.setAttribute( "href", themecssurl ); } else { themecss.rel = "stylesheet"; themecss.href = themecssurl; } //document.getElementById("syntaxhighlighteranchor").appendChild(themecss); document.getElementsByTagName("head")[0].insertBefore( themecss, document.getElementById("syntaxhighlighteranchor") ); })(); SyntaxHighlighter.config.strings.expandSource = '+ expand source'; SyntaxHighlighter.config.strings.help = '?'; SyntaxHighlighter.config.strings.alert = 'SyntaxHighlighter\n\n'; SyntaxHighlighter.config.strings.noBrush = 'Can\'t find brush for: '; SyntaxHighlighter.config.strings.brushNotHtmlScript = 'Brush wasn\'t configured for html-script option: '; SyntaxHighlighter.defaults['pad-line-numbers'] = true; SyntaxHighlighter.all();