問題タブ [tinkerpop-blueprint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
graph - 次のパターンの Gremlin クエリを作成するにはどうすればよいですか?
各頂点に「タイプ」と「テキスト」の 2 つのプロパティがあるミニチュアのグレムリン有向グラフがいくつかあります。「text」プロパティの値は単なる英語のテキストですが、「type」プロパティは次のセットから選択した値を持つことができます。
これらのグラフのすべてのエッジには、「次へ」という同じラベルが付いています。
ノードの次のパターンを持つグラフを選択できるようにしたい:
括弧内のパターン要素は、オプションであることを意味します。
したがって、最初のパターンでは、オプションでテキスト「,」を含むノード、その後にタイプ「VP」、「ADVP」、「NP」のノードが続くグラフを選択する必要があります。
2 番目のパターンでは、ノード タイプが「NP」であるグラフを選択する必要があります。その後に、テキスト「」を持つノードで始まるオプションのノード シーケンスが続き、次に任意のテキストとタイプを持つ最大 3 つのノード、次にテキストを持つノードが続きます。 "、"。このオプションのシーケンスの後に、タイプ「VP」のノードが続き、最後にテキスト「:」または「that」のノードが続きます。
最初のパターンに一致する 2 つのサンプル グラフは次のとおりです。
基本的な Gremlin トラバーサルは理解していますが、上記のパターンのオプション要素を処理する方法がわかりません。
Gremlin でそのようなパターンのクエリを作成する方法はありますか? そうでない場合は、そのようなグラフを作成してクエリを実行するための非Gremlinベースのアプローチを提案できますか?
java - グラフ作成時の Titan の IllegalArgumentException
ブループリントでグラフをインスタンス化しようとすると、初期化エラーが発生します。新しいグラフを作成するために使用しているコードは次のとおりです。
システム プロパティが設定されており、ファイルが存在します。TitanFactory でエラーがスローされています。
式 GraphDatabaseConfiguration.STORAGE_NS を評価すると、「null」が返されます。これはなぜでしょうか?
編集:
スタックトレースも含めています
Maven がテストを実行すると、別のエラーがスローされます。これは依存関係に関連しているようです。
cassandra - gremlin を使用して cassandra バックエンドでタイタン グラフからデータをロードしない。
javaでブループリントAPIを使用して、タイタン(カサンドラバックエンド)にデータを追加しました。データを挿入するためにJavaで次の構成を使用しました。
現在、gremlin を使用してそのデータベースにクエリを実行しようとしています。次のコマンドを使用してロードしました
以下は私のcassandra.localファイルです
しかし、「gV」を実行していると、空のグラフが表示されます。助けてください
ありがとう
java - Titan Cassandra - 再起動するまでゴースト頂点と一貫性のない読み取り動作
Titan から頂点を削除すると、一貫性のない読み取り動作が発生します。Cassandra を実行している単一のマシンでこれをテストしています。これが私の conf.properties です。
次のメソッドは、適切な頂点を削除します。
次のメソッドが呼び出されると、2 つの異なる結果セットが返されます。
1 つの結果は期待どおりで、削除されたプロファイルは含まれません。ただし、十分な回数実行すると、削除されたプロファイルが1つ追加されることがあります。
同じ頂点を再度削除しようとすると、その「uuid」を持つ頂点が存在しないことが示され、反復子の hasNext() は false を返します。
ただし、プログラムを再起動すると、削除された頂点は返されません。この一貫性のない動作を修正するにはどうすればよいですか?
java - Tinkerpop ブループリントの Vertex および Edge オブジェクトをモックする方法は?
データベースの一部にならずに Java で偽の Tinkerpop Bluerint Vertex と Edge を作成する方法はありますか?
ありがとう
json - GRAPHSON (グラフ要素の JSON ベースの形式) で頂点にラベルを追加する方法
参考までに リンク先へ
https://github.com/tinkerpop/blueprints/wiki/GraphSON-Reader-and-Writer-Library
json ファイル内の頂点にラベルを付けて、グラフの走査を高速化する方法。私はタイタングラフ db を使用しています。したがって、GRAPHSON は json をグラフ インスタンスに変換するために使用され、gremlin クエリ言語も使用されます。したがって、頂点の取得を高速化するには、これらの頂点にラベルを付けて分類する必要があります。どうすればラベルを追加できますか??
}
orientdb - 設計図を使用して Vertex プロパティを一括挿入または更新する -OrientDB
OrientDB 2.1.4 と blueprints-core-2.6.0 を使用しています。
既存の頂点の値を更新するか、存在しない場合は新しい頂点を作成する必要があります。(45 秒ごとに 30k の頂点が予想されます)
私の頂点クラスは次のとおりです: Device(Name, Type, ActiveSessionCount) - 各デバイスの「名前」は一意のエンティティです。
デバイスが存在する場合は、デバイスの ActiveSessionCount を更新する必要があります。そうでない場合は、新しいデバイス頂点を作成します。
頂点が存在するかどうかを確認しようとしています。頂点が既に存在する場合は、さらに更新するために頂点オブジェクトを取得しました。それ以外の場合は、新しい頂点オブジェクトを作成しました。
これは機能しますが、30k レコードの実行には数分かかりますが、45 秒で同じことを達成する必要があります。
orientdb - OrientDB: ブループリント Java API からのインポートを高速化するには?
Blueprint Java API を使用すると、OrientDB でのデータ取り込みが非常に遅くなります。plocal
具体的には、モードとクラスを使用して、いくつかの CSV ファイルから ~ 1M ノードと 3M エッジをロードしていますOrientGraphNoTx
(残念ながら、ETL は既存のノード間のエッジを含むファイルを読み取ることができないため、使用できませんでした)。コードは Scala で記述されており、約 1 時間半実行されます。
データベースのスキーマには、5 つの頂点クラス、7 つのエッジ クラス、および 6 つのインデックスが含まれています。エッジを作成するために使用する属性は、unique_hash_index
es を使用してインデックス付けされます。既存のノード間にエッジを作成するのが最も時間のかかる操作でした (おそらく多くのエッジがあるため)。以下は私が使用したコードです。誰かがそれを最適化する方法を知っていますか?