- Gremlin はグラフ トラバーサル言語であり、Giraph または Graphx はグラフ処理システムです。
あなたはgraphxまたはgiraphとtitanの違いを求めていると思います。より具体的には、グラフ データベースに既にデータがあるのに、なぜグラフ処理システムを使用する必要があるのでしょうか。
したがって、本質的には、グラフデータベースとグラフ処理システムの違いです。
アプリケーションでデータを頻繁にクエリする必要がある場合は、グラフ データベースが最適です。たとえば、Facebook のようなアプリケーションの場合、ユーザーが与えられた場合、そのユーザーのすべての友達を返します。これはグラフ データベースに適しており、gremlin を使用してクエリを実行できます。
ここで、Facebook の各ユーザーのランクを計算する場合は、グラフ全体に対して pagerank アルゴリズムを実行する必要があります。つまり、pagerank アルゴリズムはグラフ全体を処理し、 map を返します。これは、グラフ処理システムに適したアプリケーションです。はい、これを行うために gremlin フレームワークを使用してクエリを作成できますが、1. giraph や graphx で使用される基本的な pregel モデルほどユーザーフレンドリーではありません。2.効率が悪い。
要約すると、実際にはアプリケーションに依存します。アプリケーションがクエリのようなものだと思う場合。グラフ処理システムへのロードとアンロードを気にしないでください。アプリケーションが pagerank (グラフ全体を処理する必要がある) に似ていると思われ、大きなグラフ (少なくとも 1M エッジ) がある場合。giraph または graphx を選択します。
giraph と graphx にはグラフ入力形式があります。データをその形式のファイルにダンプして、これらのシステムのいずれかに入力するか、独自の入力形式を作成できます。
ps titanに保存されたデータを受け入れる入力形式をgiraph graphxに追加するとよいでしょう。