2017-01-03 4 views
0

私はcsvファイルを仮想マシンとサーバーであるarangodbにインポートしました。さて、仮想マシンとサーバーの関係を示すグラフを作成したいと思います。エッジの定義ArangoDB

私はマニュアルを読んで、両方のコレクションを関連付けるためにEdgeを定義しようとしました。しかし、エッジを定義する方法については明確ではありません。 (すなわち、Iは、のVirtualMachineのバーチャルホストとサーバの名前を相関させるために必要)

Edge Manual

arangosh> myGraph.v1 = db.vertex.insert({名: "頂点1"})。

arangosh> myGraph.v2 = db.vertex.insert({name: "vertex 2"});

arangosh> myGraph.e1 = db.relation.insert(myGraph.v1、myGraph.v2、 ........> {label: "knowows"});

この例では、myGraphを定義する方法は?

JavaScript exception: ReferenceError: myGraph is not defined 
!myGraph.v1 = db.vertex.insert({ name : "vertex 1" }); 
!^ 
stacktrace: ReferenceError: myGraph is not defined 
    at <shell command>:1:1 

また、コレクションの属性を1つずつ定義する必要がありますか? myGraph.v1 = db.server.insert({name: "server"}); myGraph.v2 = db.virtualmachine.insert({name: "virtualhost"});

ありがとうございました。

答えて

0

最初にこの例に関する質問に答えてください: myGraph変数を定義する例では1行がありません。 これは偶然隠され、次のドキュメントビルドで表示されます。

不足している行がある:

arangosh> var myGraph = {}; 

これは、空のmyGraphオブジェクトを作成します。このオブジェクトは、頂点文書への参照を保持するだけで、arangodbグラフモジュールには直接関係しません。

例では、ライン毎に独立変数を使用することができる:

arangosh> var v1 = db.vertex.insert({name: "vertex 1"}); 
arangosh> var v2 = db.vertex.insert({name: "vertex 2"}); 
arangosh> var e = db.relations.insert(v1, v2, {label: "knows"}); 

これ以上は、データベース側で同一です。

しかし、ここでグラフの使い方を教えてください。 詳細については、グラフhttps://docs.arangodb.com/3.1/Manual/Graphs/index.htmlのマニュアルの章をチェックするのが一番良いと思います。

0
arangosh> var myGraph = {}; 

arangosh> var myGraph.v1 = db.vertex.insert({name: "vertex 1"}); 
arangosh> var myGraph.v2 = db.vertex.insert({name: "vertex 2"}); 
arangosh> var myGraph.e = db.relations.insert(
         myGraph.v1, myGraph.v2, {label: "knows"}); 
+0

この回答が現在の問題の修正にどのように役立つかについての回答をいくつか追加してください –

関連する問題