GROUPエンジニアブログです。MongoDB2014年06月16日16:52カテゴリDBtoolMongoDBのGUIツールを比較してみたみなさんこんにちは。Suiteの開発をしています。@tana_raことあらたです。世の中にはアルファベット3文字が溢れていて混乱しますよね。AWSと広告業界が混ざるとカオスです。AWSとかEMRとかSSPとか。DMPもその一つですね。Platformの略です。ところでcosmiでは、データの管理にMySQLとMongoDBを利用しています。私は開発時にはMySQLのGUIツールをよく利用するのですが、MongoDBのGUIツールってあまり聞かないなと思ったので探してみました。今日は触ってみたMongoDBのGUIツールを紹介してみたいと思います。基本的にWEBベースの物を利用しています。現在masterブランチに上がっているものを利用しています。■phpMoAdminまずはじめにphpMoAdminです。名前から分かる通りPHP製です。phpMyAdminとかphpMyFaqとか似た名前のものがたくさんありますね。Rootに配置するか、PHPのビルトインサーバで利用することが出来ますね。/var/www/html/moadmin.phpでインストール完了です。何にもせず接続できました。デフォルト設定で接続ができますが、Configファイルなどはないのでportを変えたり、認証をつけたりすると使えなくなってしまいます。(無理やりコードを変更することで色々できますが・・・w)基本的なデータの確認は可能ですが、ユーザ認証とかは無いみたいですね。■RockMongo次にRockMongoです。したがって、phpMoAdminと同様の方法で利用することが出来ます。/var/www/html/rockmongoこれで完了です。アクセスすると以下のような画面が現れます。ログイン認証もできますが、以下のように/var/www/html/rockmongo/config.phpの31行目を編集すれば認証を無くすことも可能です。false;するとこんな画面が現れます。RockMongoは結構機能が多そうですね。データの確認も見やすくていいです。■mongo-expressmongo-expressはJavaScript(node.js)製のGUIツールです。Bootstrapを利用しているようで綺麗です。config.jsデフォルトだとconfig.jsが無いため怒られます。config.default.jsをコピーして使いましょう。今MongoDBで認証は行っていないのでconfig.jsで認証が必要ないように変更します。変更しないとConnectionErrorとコンソールに出てきます。connected以下がアクセスした時の画面です。́・ω・`)w■Genghis最後にGenghisです。Genghisの読みがわからなくてぐぐったらチンギスハンのチンギスらしいです。installでもできるらしいのですが、PHPerな私はPHPのビルトインサーバを利用しました。(色々躓いたわけでは決してないです。Bootstrapを利用しているのでどことなくモダンな感じです。genghis.phpとして、アクセスしたら下のような画面にたどり着きました。localhostを選択すればlocalhostのサーバにつながります。serverとやれば、他サーバのMongoDBにもつなげることが出来そうです。localhostにつなげてみた画面が以下のようになります。Bootstrapのおかげかとても見やすいですが、findとinsertくらいの機能しかありませんでした。◯という感じでしょうか。データの確認レベルであればphpMoAdmin以外はどれも良さそうだなーと思いました。MongoDBにはAggregationやMap-Reduce機能もありますが、それら用のなにか特別な機能はなさそうでした。個人的にはGUIツールに要求する機能はデータの確認くらいという結論に至りました。すると、データの確認がカジュアルにできる、mongo-expressはかなりいいなと思います。(開発環境とはいえ誤って複雑なレコードを消したら泣きそうですがw)GUIツールは個人に依る部分があると思うので皆さんも試してみるといいかもしれません。みなさん、MongoDBのGUIツールと戯れてみてください。VagrantとVirtualboxを利用してMongoDBのGUIツールを検証出来るレポジトリです。