system
マリンロード

2015.3.3システム開発 

マリンロード

NoSQLのススメ ~mongoDB

こんにちは、システムエンジニアの福田です。

前回「NoSQL」についてブログに書かせて頂きましたが、今回はNoSQLのデータベースである「mongoDB」をご紹介したいと思います。

▼mongoDB
http://www.mongodb.org/
※ライセンスは「GNU AGPL v3.0」ただしドライバは「Apache License」)

mongoDBの特徴は
ドキュメント指向データベース
であることでしょう。

聞きなれない言葉かも知れませんが、RDBMSのようにレコードをテーブルに格納するのではなく、「ドキュメント」と呼ばれるデータ(JSONに似たBSONという)の集合を「コレクション」として管理する・・・ということらしいです。

つまりは

————————————–
{
 ”username” : “fukuda”,
 ”age” : “35”,
 ”address” : {
  ”pref” : “tochigi”,
  ”city” : “utsunomiya”,
 }
}
————————————–

このようなデータを「コレクション」に入れて管理するという訳でして・・・

のみならず

————————————–
{
 ”username” : “uematsu”,
 ”address” : {
  ”pref” : “tochigi”,
  ”city” : “utsunomiya”,
 }
}
————————————–

このように「”age”」が欠けたデータでも

————————————–
{
 ”username” : “oonuki”,
 ”height” : “185”,
 ”address” : {
  ”pref” : “tochigi”,
  ”city” : “kanuma”,
 }
}
————————————–

さらには「”height”」が増えたデータでも、同じコレクションで管理することができるのです。

RDBMSであれば細かいテーブル設計が必要ですが、mongoDBでは必要ない・・・は過言ですが、入れたいデータをそのまま入れられるのは大きな魅力です。

※とはいえ、効率的に運用するにはそれなりにデータの設計が必要でしょうが。

昨今では、「Nginx」+「Node.js」+「mongoDB」を組み合わせてのWEBアプリ開発が人気とのこと。

これを機に「mongoDB」を試してみてはいかがでしょうか?

現役ウェブ解析士が教えるWebサイトの読み解き方 イメージ
システム開発サービスはこちら
ページTOPへ