MongoDBとは?

近年主にWebアプリケーションのデータストアとしてRDBMSの代わりにNoSQLと呼ばれるミドルウェアが注目を集めている。NoSQLは、RDBMS以外のデータストアの総称であり様々な製品が存在するが、いずれもRDBMSよりも機能がシンプルな分高速に動作し、スケーラビリティに優れるという特徴を持っているものが多い。

MongoDBは数あるNoSQL製品の中でも特に人気の高いもののひとつで、スキーマレスなドキュメント指向のデータベースだ。今回は、このMongoDBのフロントエンドとして利用可能なツールを紹介したい。

mViewer

mViewerは、Javaで実装されたWebベースのMongoDBフロントエンドだ。軽量サーブレットコンテナであるwinstoneが同梱されており単体で実行できるようになっているため、Javaが動作する環境があればすぐに利用することができる。

図1 : mViewer

データベースやコレクションの作成・削除、ドキュメントの作成・更新・削除、検索や内容の参照など一通りの操作をGUIで行うことができる。ドキュメントはJSONテキスト形式とテーブルツリー形式のいずれかで内容を確認することができるが、ドキュメントを変更する場合はJSON形式のテキストを直接編集する必要がある。また、少し変わった機能として、CRUDの状況をグラフ表示する機能がある。

図2 : 実行状況のグラフ


JMongoBrowserMeclipseMongoDBMongoDB

WebMongoDBPythonFang of MongoPHPRockMongo

JMongoBrowser


JMongBrowserJavaSwing使(WindowsLinuxMac)

図3 : JMongoBrowser

mViewer同様、データベースやコレクションの作成・削除、ドキュメントの作成・更新・削除、検索や内容の参照など一通りの操作をGUIで行うことができる。

また、同時に複数のMongoDBインスタンスに接続可能なほか、ドキュメントの作成・更新や検索条件の入力時はグラフィカルに操作可能なJSONエディタを利用することができたり(もちろんテキストで直接JSONを入力することも可能)、検索結果をJSONやCSV、BSONでエクスポート・インポートする機能もある。

図4 : JSONエディタ

その他のスタンドアロンで動作するMongoDBフロントエンドには、.NETで実装されたMongoVUEやMac専用のMongoHubなどがある。

Meclipse

Meclipseは、Eclipseプラグインとして動作するMongoDBフロントエンドだ。以下の更新サイトからインストールすることができる。
http://update.exoanalytic.com/org.mongodb.meclipse/

図5 : Meclipse


JMongoBrowser便

Eclipse


MongoDBNoSQLWebEclipse稿MongoDBWeb