来週10genのエンジニアさんとディナーできる事になったので、
MongoDB: The Definitive Guideを読みつつ、実際に手動かしてみよう、と。
■ MongoDBのインストール
ダウンロードページ(http://www.mongodb.org/downloads)にいくと↓こんな感じになっています
2.0.1がレコメンドされてる感じで、32bit Windowsマシンを今回は使うので、
mongodb-win32-i386-2.0.1.zip をダウンロードしました。
オープンソースのプロダクトなのでソースもダウンロードできますが、C++とかちょっと
読めそうにないのでそっとしておきますw
あ、あと、32bitのマシンの制限としてMAXで2GBのデータしか取り扱えないので注意~って
上記のハードコピーの下くらいのとこに書いてあります。
まぁ↓の記述みると、32bitサポートするとあれやこれやタルいし普通MongoDB使うような
でかいデータ扱うなら64bitにすんべやって事ですかねぇ。
http://blog.mongodb.org/post/137788967/32-bit-limitations
んでもって、今回はWindowsなのでアレですが、MacやLinuxだと↓みたいにパッケージがあるので
サクっとインストールして動かす事が出来そうです。
ダウンロードしたバイナリのインストールは↓のQuickstartページを参考に進めていきます。
http://www.mongodb.org/display/DOCS/Quickstart+Windows
UnzipしてC直下にズゴンと置きます。
#Linuxとかだったらバージョンのとこはあれにしてシンボリックリンクとかですかね。
By default MongoDB will store data in datadb, but it won't automatically create that folder, so we do so here: C:> mkdir data C:> mkdir datadb
って事なので、その通りやっておきます。
■ MongoDBサーバの起動
上記でインストールしたバイナリ(mongod.exe)を使ってプロセスを起動してみます。
コンソールでbinディレクトリに移動して叩いてやると以下のように起動します。
出てきたメッセージを摘んでみると、32bitだとジャーナルファイルがデフォルト無いよん、とか
#何を記録しておくアレなのか分かりませんがw
Sun Nov 06 11:30:39 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
プロセス番号とポートとデータベースのパスはここですよん、とか
Sun Nov 06 11:30:39 [initandlisten] MongoDB starting : pid=6128 port=27017 dbpath=/data/db 32-bit host=P12895
2ギガの制限があるんですよ、とか
Sun Nov 06 11:30:39 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
MongoDBのバージョンとGitのSHAとか出てきます。MongoDBは開発にGit使ってるんですね~
Sun Nov 06 11:30:39 [initandlisten] db version v2.0.1, pdfile version 4.5 Sun Nov 06 11:30:39 [initandlisten] git version: 3a5cf0e2134a830d38d2d1aae7e88cac31bdd684
■ MongoDBクライアントを使ってみる
先ほど立ち上げたサーバに対して、今度はクライアントコマンドを使ってアクセスしてみます。
create databaseとかしたわけでもないですが、
デフォルトでは connecting to: test ってことでtestというデータベースに繋がるようです。
とりあえず足し算とかdbコマンドは置いておいて、
fooというコレクションに{ a : 1 }というBSONをインサートします。
BSON(http://bsonspec.org/)ってのは↓で、BinaryなJSONなんだよ、と。MongoDBではドキュメントにこのBSONを使います。
BSON [bee · sahn], short for Binary JSON, is a binary-encoded serialization of JSON-like documents.
また、コレクションっていうのはRDBMSで言うところのテーブルみたいなものですが、
DDLっちゅうかスキーマ定義的なのはありゃしませんよー、と。
#この辺、JavaScriptでオリャっとホゲホゲするのが好きな人には
#ワクワクしちゃう感じなんだろうなぁとか思ったりします。
#(自分もそんなエンジニアになりたいですw)
また、WindowsのマシンにMongoDBをインストールする上↓のブログはとても参考になります!
MongoDB のインストール | Web/DB プログラミング徹底解説
—
秀和システム
売り上げランキング: 28467
コメント