問題タブ [tinkerpop3]

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.

0 投票する
1 に答える
411 参照

graph - Gremlin Server (Titan 1.0) で内部サブクエリを形成する方法は?

私は次のクエリを使用しています:

次の結果が得られます:

応答で Vertex "NotificationInitiatedByVertexId" (Edge Property ) の情報も取得したい。そのために、次のクエリを試しました:

注:クエリ自体でエッジプロパティから動的に値を取得する方法がわからなかったため、サブクエリで頂点IDを直接試しました。

エラーを出しています。私はたくさん試しましたが、解決策を見つけることができません。

0 投票する
1 に答える
627 参照

elasticsearch - Titan 1.0 の混合インデックスが警告で機能しない - クエリではすべての頂点を反復処理する必要がある

私はバックエンドとしてelasticsearchでTitan 1.0を使用しています。titan のドキュメントから、elasticsearch を使用するために、インデックスの構築中に mixedIndex を使用することを学びました。私のユースケースと問題は次のとおりです。本屋の登録データ、登録時間のデータ、および名前や年齢などのその他の個人情報用のグラフデータベースを作成しています。特定の時間範囲に登録されたすべてのユーザーを照会したい、つまり、クエリの数値比較関数が必要です。これは私がインデックスを作成する方法です:

ただし、timeIndex は正常に作成されますが、登録された時刻を次のようにクエリしたい場合は、次のようになります。

それは私に与えます:

gremlinコマンドでチェックして、データがすぐそこにあることを確認しましたが、空の結果が得られます。私は何か間違ったことをしていますか?どうすればこの問題を解決できますか?

0 投票する
1 に答える
243 参照

tinkerpop3 - Blazegraph Tinkerpop 3 インデックス作成

Blazegraph について学習しようとしています。現時点では、単純なルックアップを最適化する方法に戸惑っています。

すべての頂点にid一意のプロパティがあるとします。このプロパティはユーザーが設定します。idTinkerpop API にこだわりながら、特定の頂点の検索を高速化する方法はありますか?

ここで定義されている検索 APIが唯一の方法ですか?

私の以前の経験はTitanDBであり、Titan の場合、Tinkerpop API が完璧に統合されるインデックスを定義することが可能です。検索 API を使用せずに Blazegraph で同じ結果を得る方法はありますか?

0 投票する
0 に答える
70 参照

orientdb - (Tinkerpop) DAO オブジェクトからモデル オブジェクトへの FramedGraph マッピング

OrientDb 2.2 と TinkerPop FramedGraph を使用しています。オブジェクトモデルとのやり取りを簡単にするために、FramedGraph を使用しています。setProperty("name", "bob")

FramedGraph について理解できないことの 1 つは、実装できないインターフェイス DAO オブジェクトがあるのはなぜですか? 上記の制約により、オブジェクトの重複があります: tinkerpop DAO インターフェイスとモデル オブジェクトです。

interface UserNode { private String firstName; private String lastName; }

class User { private String firstName; private String lastName; }

これは、大量のデータを読み書きするときに大きなオーバーヘッドを引き起こします。

List<User> fetchAllUsers() { Iterable<UserNode> userNodes = graph.query().vertices(UserNode.class); List<User> users = new ArrayList<>(); for (UserNode userNode: userNodes) { User user = new User(); user.setFirstName(userNode.getFirstName()); user.setLastName(userNode.getLastName()); users.add(user); } }

上記の非効率を回避する方法はありますか?

0 投票する
4 に答える
7508 参照

gremlin - 単一のgremlinクエリに複数のエッジを追加する方法は?

私のシナリオは、1 つのクエリで頂点間に複数のエッジを追加することです。

以下のノードを想定してください: これらは私が持っているラベルと ID です

ユーザー:

4100

:

4200

4355

4676

これらの頂点間にエッジを確立する必要があります

通常、ノード間に単一のエッジを作成することで実行できます。一度に 50 を超える頂点間にエッジを作成する場合、効率的な方法ではありません。ティンカーポップを使用しています3.0.1

0 投票する
1 に答える
591 参照

gremlin - Tinkerpop 3でカスタムステップを定義するには?

Tinkerpop 2 は、Gremlin.defineStep(..) によるユーザー定義のステップをサポートするために使用されていました

Tinkerpop 3 を使用して同じことを達成するにはどうすればよいですか?

カスタムステップを作成し、トラバーサルステップのセットを組み合わせるGremlin APIはありますか?

どんな提案でも大歓迎です。

ありがとうカニスカ

0 投票する
2 に答える
978 参照

apache-spark - SparkGraphComputer を使用してタイタン グラフの頂点をカウントすると、org.apache.spark.SparkException: Job aborted due to stage failure:

SparkGraphComputer を使用してクラスター上のタイタン グラフの頂点数をカウントしようとすると、対処方法がわからないというエラーが表示されます。コードでtinkerpop 3.1.1-incubatingとTitan 1.1.0-SNAPSHOTを使用しており、クラスターにdatastax community edition 2.1.11とspark 1.5.2-bin-hadoop2.6をインストールしました

私の問題を再現するために、最小限の Java の例をまとめました。

OLTP を使用したカウントと、FulgoraGraphComputer で OLAP を使用したカウントは、正しい答えを返します。ただし、SparkGraphComputer を使用した OLAP カウントは、org.apache.spark.SparkException: Job aborted due to stage failure: をスローします。

興味深いことに、Titan に同梱されている gremlin コンソールで同様のスクリプトを実行すると、同じアルゴリズムのように見える別のエラーが発生します。

これは 2 回スローorg.apache.thrift.protocol.TProtocolException: Required field 'keyspace' was not present! Struct: set_keyspace_args(keyspace:null)しますが、完了して正しくない 0 を返します。

この記事がメーリング リストにあることは知っていますが、内容を理解できないか、問題を解決できません。何が起こっているのか、これを修正する方法を誰かに説明してもらえますか? 以下に設定を貼り付けました。

編集:このスクリプトはエラーを再現します