Symfoware Serverにおいて、データベースサーバを再起動したあとの初回のデータ検索のレスポンスが遅い理由について

Symfoware Serverの技術情報はこちら

Symfoware Serverにおいて、データベースサーバを再起動したあとの初回のデータ検索のレスポンスが、2回目以降のデータ検索のレスポンスと比較して遅いです。原因と対処方法を教えてください。
[原因]
初回のデータ検索では、テーブルやインデックスのデータ(ディスク上のデータ)を、格納媒体から共有バッファ(メモリ)に読み込みます。2回目以降のデータ検索では、共有バッファ(メモリ)にキャッシュされたデータを使用します。
そのため、初回のデータ検索は遅く、2回目以降のデータ検索は早くなります。

[対処方法]
業務開始時に、本原因に伴う性能影響を軽減する方法として、以下のような対処方法があります。
  • データベースサーバの再起動後、業務を開始する前に、業務でよく使用するテーブルを検索しておく。
  • データベースサーバの再起動後、業務を開始する前に、業務でよく使用するテーブルに対してpg_prewarm関数を実行しておく。
  • データベースの格納媒体をI/O性能の高いもの(SSDなど)に変更する。

pg_prewarmの詳細は以下のマニュアルを参照してください。
FUJITSU Software Symfoware Server V12.6.0
 PostgreSQL 12.7 Documentation (*1)
  Part VIII. Appendixes
   Appendix F. Additional Supplied Modules
    F.27. pg_prewarm
 (*1)Solarisの場合は以下のマニュアルを参照してください。
 PostgreSQL 9.6.2文書
  パート VIII. 付録
   付録F 追加で提供されるモジュール
    F.27. pg_prewarm
なお、上記以外の製品バージョン/レベルについては、該当するマニュアル箇所を参照してください。
製品・サービス区分 Symfoware
製品・サービス情報
対象製品Symfoware Server (Open Interface),
Symfoware Server (Postgres)
プラットフォームWindows,Solaris,Linux
アンサー種別 設計/開発
このページの先頭へ