辺およびプロパティのキャッシング
辺およびプロパティのグラフ・キャッシングを構成する方法。
キャッシングはクエリー・パフォーマンスを向上させることができ、構成が可能です。DSEグラフのキャッシュには、隣接リスト・キャッシュとインデックス/プロパティ・キャッシュの2種類があります。辺またはプロパティのどちらかをキャッシングするには、スキーマAPI vertexLabel()メソッドをcache()
オプションと一緒に使用します。キャッシングはすべての辺、すべてのプロパティ、または辺のフィルター済みセットに対して構成できます。頂点は直接キャッシングできません。ただし、頂点間の関係を定義するキャッシング・プロパティおよび辺が、実質的に同じ操作を実行します。
インデックスが存在し、クエリーの過程で使用されている場合、プロパティ・キャッシングは有効です。フル・グラフ・スキャン・クエリーはキャッシングされません。インデックスが存在しない場合、キャッシングは発生しません。辺についてキャッシングが構成されている場合、隣接リスト・キャッシングは有効です。
キャッシュはノードにローカルであり、データはクエリーで読み取られたときにキャッシュに読み込まれます。両方のキャッシュはdse.yamlファイルで、デフォルト・サイズの128 MBに設定されています。設定はadjacency_cache_size_in_mb
およびindex_cache_size_in_mb
です。両方のキャッシュは、Least Recently Used(LRU)キャッシュとして実装されているオフヒープ・メモリーを利用します。
キャッシングは、同じ情報が後のクエリーで必要となった場合に、より効率的にクエリーを実行するためのものです。たとえば、meal
(食事)頂点のcalories
(カロリー)プロパティのキャッシングを行うと、all meals with a calorie count less than 850 calories(850カロリー未満のすべての食事)を要求するクエリーの取得が改善されます。
グラフ・キャッシングには、破棄の方法がありません。フラッシュは発生しません。さらに、要素が削除または変更されても、キャッシュは更新されません。キャッシュは、要素についてキャッシュが構成されたときに設定されるTime To Live(TTL)値のみに基づいてデータを排除します。データが古くなることを回避するために、頻繁に変化する要素には低いTTL値を設定します。
Installer-Services | /etc/dse/dse.yaml |
パッケージ・インストール | /etc/dse/dse.yaml |
Installer-No Services | install_location/resources/dse/conf/dse.yaml |
tarボール・インストール | install_location/resources/dse/conf/dse.yaml |