0

ここに投稿する助けがないので、gremlin-group と auriliusgraphs グループに同じ質問を投稿しました。

私は現在、titan + rexster + cassandra + gremlin を評価しています。私たちのユースケースでは、グラフへの書き込みは非常に簡単で、ほとんどの場合、titan buleprints API を使用して Java コードを介して行われますが、読み取りは非常に動的であり、異なる環境で実行されているクライアントからのものである可能性があります。言語 (java/python) したがって、rexpro を介して gremlin を介して読み取ることを考えています。私が観察したことは、rexster サーバーへの接続に要求ごとに最大 500 ミリ秒の時間が費やされていることです。現在、Macbook (2 CPU、8 GB、1600 MHz) で実行されている非常に小さなグラフで、頂点が最大 3K、エッジが最大 30K あります。2 度の隣接要素のトラバーサルを含む少し複雑なクエリを実行していますが、すべてインデックスが関係しています。1 回のショットで約 100 のクエリを実行すると、完了までに約 1 秒、つまりクエリごとに 10 ミリ秒かかりますが、1 つずつ実行すると約 50 秒、つまりクエリごとに約 500 ミリ秒かかります。複数の並列クライアントを実行すると、線形ではありませんが時間が増加します。たとえば、同じ 100 クエリで 5 つの並列クライアントを実行すると約 110 秒かかり、同じ 100 クエリで 10 の並列クライアントを実行すると約 170 秒かかります。Java を RexsterClient で、python を python-rexpro (https://github.com/bdeggleston/rexpro-python )、 -f オプションを使用して rexster-console でスクリプトを直接実行するか、http クライアント経由でスクリプトを実行します。CentOS 6.5 の単一ノード クラスターで実行しているときに、同様の結果が得られました。また、クエリの種類によってパフォーマンスが大きく変わることはありません。単純に使用しg.Vても結果は似ています。AFAIK rexster は grizzly を使用しているため、サーバーのパフォーマンスが大幅に向上することが期待されます。

私が使用している Titan のバージョンは 0.5.3 です。私は1GBのXmxをrexsterに渡しました。rexster.xml の構成は次のとおりです。

<http>
    <server-port>8182</server-port>
    <server-host>0.0.0.0</server-host>
    <base-uri>http://localhost</base-uri>
    <web-root>public</web-root>
    <character-set>UTF-8</character-set>
    <enable-jmx>false</enable-jmx>
    <enable-doghouse>true</enable-doghouse>
    <max-post-size>2097152</max-post-size>
    <max-header-size>8192</max-header-size>
    <upload-timeout-millis>30000</upload-timeout-millis>
    <thread-pool>
        <worker>
            <core-size>8</core-size>
            <max-size>8</max-size>
        </worker>
        <kernal>
            <core-size>4</core-size>
            <max-size>4</max-size>
        </kernal>
    </thread-pool>
    <io-strategy>leader-follower</io-strategy>
</http>
<rexpro>
    <server-port>8184</server-port>
    <server-host>0.0.0.0</server-host>
    <session-max-idle>1790000</session-max-idle>
    <session-check-interval>3000000</session-check-interval>
    <connection-max-idle>180000</connection-max-idle>
    <connection-check-interval>3000000</connection-check-interval>
    <read-buffer>262144</read-buffer>
    <enable-jmx>false</enable-jmx>
    <thread-pool>
        <worker>
            <core-size>64</core-size>
            <max-size>64</max-size>
        </worker>
        <kernal>
            <core-size>32</core-size>
            <max-size>32</max-size>
        </kernal>
    </thread-pool>
    <io-strategy>leader-follower</io-strategy>
</rexpro>

何が間違っている可能性がありますか?

よろしくお願いいたします。

4

0 に答える 0