ここまではJavaプログラム中にneo4jのエンジンを組み込んで使用する例を紹介してきたが、neo4jにはデータベースを操作するためのシェルも用意されている。

シェルを使用するにはneo4jのダウンロードページからneo4j-shell-1.0.jarを別途入手し、以下のようにjavaコマンドでデータベースの位置を指定して起動する。

java -jar neo4j-shell-1.0.jar -path ./db

シェルでは以下のようなコマンドを使用することができる。各コマンドにはさまざまなオプションが指定可能だ。詳細についてはこちらを参照してほしい。

コマンド 説明
cd カレントノードを移動する
ls カレントノードのプロパティを表示する
trav トラバース
mkrel ノード/関連を作成する
rmrel ノード/関連を削除する
set プロパティをセットする

また、neo4jのフロントエンドとしてはNeoclipseというEclipseプラグインも存在する。ノードとノード間の関連をグラフィカルに表示することができるためグラフ構造がわかりやすい。

図3 Neoclipse

Neoclipseはこちらの更新サイトからプラグインとしてインストールすることができるほか、スタンドアプリケーションとして動作するバージョンも提供されている。

これらのフロントエンドツール使用することでデータベースの操作を手軽に行うことができる。ちょっとしたデータの確認などに活用するといいだろう。

まとめ

グラフデータベースは現在主流となっているリレーショナルデータベースでは表現できない複雑かつ柔軟なデータ構造を表現することできる。

neo4jはバージョンこそ1.0と若いものの、長年製品開発に使用されてきた実績を持ち、周辺ツールやさまざまなフレームワークとの統合など、実践で利用するのに十分な品質と機能、そして性能を備えたグラフデータベースだ。実装もコンパクトでプロダクトに組み込んで利用することもでき、利用方法も容易だ。

利用にあたってはオンラインサービスであってもソース公開の義務が生じるAGPLv3というライセンスがネックになる可能性はあるが、適材適所で導入を検討してみてはどうだろうか。