6.8.10.1 メモリー割当て

グラフ・サーバー(PGX)にはon-heapおよびoff-heapメモリーがあり、前者は標準JVMヒープですが、後者はPGXによって管理される別のヒープです。グラフ・データと同様に、PGQL問合せの中間結果および最終結果は、一部がオンヒープおよび一部がオフヒープで格納されます。したがって、両方のヒープが必要です。

オンヒープ・メモリーの場合、JVMの起動時にデフォルトの最大値が選択されますが、-Xmxオプションを介して上書きできます。

オフヒープの場合、デフォルトでは最大値は設定されず、オフヒープのメモリー使用量はシステム・リソースを使い果たすまで自動的に増加し続けます。システム・リソースがなくなると、操作が取り消され、メモリーが解放され、適切な例外がユーザーに渡されます。必要に応じて、PGXのmax_off_heap_sizeオプションを介して最大オフヒープ・サイズを構成できます。

可能なかぎり最大のグラフをロードして問合せを実行できるようにするための適切な開始点として、オンヒープ・とオフヒープの比率を1:1にすることをお薦めします。たとえば、マシンで256GBのメモリーが使用可能な場合、最大オンヒープを125GBに設定すると、同様の量のメモリーがオフヒープに使用可能になります。

export JAVA_OPTS="-Xmx125g"