2

私は OrientDB 2.1.11 と rexster 2.6 を使用しており、gremlin がメインのクエリ言語です。私はrexpro(およびrexster REST)を介して使用します。私の問題は、グレムリンからヒットするインデックスを取得する方法です(SQLの方向付けではなく、グレムリンを使用する必要があります)。

スキーマで定義され、辞書としてインデックス化された 1 つのプロパティ zip_code を持つ頂点クラス zipcode があります。

zipcode.zip_code    DICTIONARY  ["zip_code"]    SBTREE 

しかし、gremlin を使用してクエリを実行すると、レコードが 25k を超えると遅くなります (これより低い数値ではテストしていません)。適切なコンテキストを提供するために、最初に郵便番号を見つけようとします。郵便番号が存在しない場合は、後で使用するために頂点を作成します。検索クエリは次のようになります。

g.V('@class', 'zipcode').has('zip_code','10018')

質問: gV('@class'... はインデックスにヒットしていますか? V の 1000000 オブジェクトを超えていませんか? 頂点クラス、つまり zipcode をより効率的にするために、より適切に記述する方法はありますか?私のクラス(郵便番号)の頂点のプロパティ。

またはを使用する方が良いですhas('zip_code', '12345')filter {it.zip_code == '12345'}?作成されたインデックスにヒットするのはどれですか?

照合するために複数のプロパティを照合する必要がある場合:

.has('zip_code', '12345').has('state','NY').has('city','NEW YORK') 

ヒット インデックスまたは 'filter{}' を持っていますか? お知らせ下さい。

4

1 に答える 1