Dgraphキャッシュのウォーミング

warm-cacheコマンドは、クラスタ内のすべてのDgraphインスタンスの各Dgraphキャッシュをウォームします。

コマンドは、Dgraphの使用パターンを考慮し、各Dgraphに対して指定された期間の一連の以前の問合せをリプレイします。そのリプレイによって、キャッシュはウォームされ、Dgraphは後続のユーザー問合せでキャッシュされた結果を再利用でき、問合せ処理におけるユーザーが識別可能な待機時間の削減に役立ちます。

キャッシュ・ウォーミング・リクエストを明示的に発行する必要があります。これは自動的には実行されません。このコマンドの唯一のパラメータは、キャッシュ・ウォーミングが実行される時間制限です。

warm-cacheの呼出しが成功すると、空のレスポンスで即時に返し、バックグラウンドでキャッシュ・ウォーミング・ジョブを開始します。時間制限に達すると、キャッシュ・ウォーミングは停止します。この間に、Dgraphに別のリクエストを発行すると、そのリクエストはキャッシュ・ウォーミングより優先されます。

既存のキャッシュには、索引の変更後に実行されない問合せ(たとえばレコード・スキーマが更新後に変更されたため)が含まれている可能性もあります。キャッシュ・ウォーミング・コマンドは、このような問合せ(問合せがリプレイするよう選択されている場合)からのエラーを無視し、リスト内の他の問合せの実行を続行します。キャッシュ・ウォーミング操作によってリプレイされた実際の問合せは、リクエスト・ログには表示されません。

このコマンドの構文は次のとおりです。
endeca-cmd warm-cache [--time-limit-sec <sec>] [global-options]

--time-limit-secパラメータはオプションです。以前の問合せをリプレイする時間制限を指定します。タイムアウトを指定しないと、デフォルト値の1800秒(30分)が使用されます。

Dgraphキャッシュをウォームするには、次の手順を実行します。

  1. コマンド行から、endeca-cmdディレクトリに移動します。
  2. warm-cacheコマンドを実行します。

endeca-cmd warm-cache --port 7003
Warmed the cache on DGraph node: we009.us.example.com:7010.