2017-08-22 13 views
0

OrientDBの頂点との間で所定のタイプの着信または発信エッジの総数を取得したいと考えています。明らかな方法は、count()とinE(MyEdgeType)、outE(MyEdgeType)、またはbothE(MyEdgeType)を使用してクエリを作成することです。しかし、私は時間の複雑さに心配しています。この操作がO(1)ではなくO(N)であれば、問題のエッジの数が非常に大きくなることが予想されるため、必要なときにcount()を使用するのではなく、データベースに格納する方が良いでしょう。 。私はドキュメントを検索しましたが、OrientDBの機能の複雑さを列挙していないようです。また、in/out/bothまたはinE/outE/bothEのどちらを使用するかはわかりません。私はEバージョンがより速くなると推測しますが、OrientDBがエッジをフードの下に格納する方法によっては、間違っている可能性があります。OrientDBでのカウントエッジの時間複雑度

頂点への/からの与えられたタイプの入/出/両エッジのセットを一定時間の動作から数えます。そうでなければ、その時間の複雑さは何ですか?最も効率的であるためには、inE/outE/bothE、またはin/out/bothの両方を使用する必要がありますか?それとも、私が見逃してしまった方法がありますか?

答えて

0

OrientDBでは、これはO(1):inE()/outE()/bothE().size()で、エッジラベルをパラメータとして使用しても使用しなくてもかまいません。