Graphdb の使い方を学びたい場合は、ソフトウェアを使用する必要はありません。鉛筆と紙と脳で十分です。デザインを考え出すために心に留めておく必要があることは次のとおりです。
- グラフとは: 頂点と辺
- graphdb データ構造に固有のもの: 頂点とエッジは python のような dict に関連付けられています。
- 私が直面している問題を解決するためにgraphdbに必要な情報は何ですか。グラフに対して実行できるようにするすべてのクエリをリストします。
下の図には、設計の基礎となるグラフが表示されます。

すべてのノードに名前、生年月日など、一意の識別子があることを想像する必要があります。
これは、2 つの切り離された家族を表しています。左は 2 人の子供がいる家族、右は 3 人の子供がいる家族です。
上記のグラフを使用すると、次のように計算できます。
また、親と子のみを持つ 2 つのファミリしかないため、祖父母または孫が表されていないため、実際には次のクエリも計算できることを理解できない場合があります。
Python を試してみたい場合は、簡単なセットアップから始めて、いくつかの選択肢があります。
純粋なパイソン:
- dictを継承したVertexクラスとEdgeクラスを作成します。
- 実際のデータなどから Python コードで家系図を作成します。
- クエリを試してください。
Python と BerkleyDB
- 免責事項:これは私のプロジェクトです
- グラフがデータベースに保存されることを除いて、純粋な Python バージョンと同じです。API は neo4j python バインディングに似ています。
これらは他のソリューションですが、ターゲット アプリケーション (Web やデスクトップなど) に関するコンテキストがなければ、すべてをリストすることはできません。これらは、neo4j Web サイトの役立つ情報です。
そうは言っても、最良のソリューションには neo4j が含まれる可能性がありますが、複数のデータベースを簡単に切り替えてユースケースのパフォーマンスの観点から最適なデータベースを見つけたい場合は、ネットワーク アプリケーション用のRexsterまたはその他のアプリケーション用のBlueprintsが必要です。neo4j サーバーを直接使用する唯一の理由は、暗号クエリ言語を使用できるようにするためです。
家系図のウェブアプリを作成し、そこからビジネスを構築する必要がある場合は、私が構築したソフトウェアを使用します。
それらはそのままでは生産の準備ができていません。しかし、それは私がすることです。