i-Reporter利用者マニュアル
TOP_i-Reporter利用者マニュアルサポートWEB【旧】利用者マニュアル
サーバーを構築・メンテナンスする
サーバーを構築・メンテナンスする
  • ConMas Server のインストール(オンプレミス版)
    • ConMas Server インストール手順書
  • データベースのリストア
    • データベースバックアップリストア手順
  • メンテナンス
    • オンプレミス版_PostgreSQL推奨設定
    • オンプレミス版 サーバーストレージ容量の削減方法
    • PostgreSQL14へのアップグレード手順書
    • サーバー移行及びPostgreSQLアップグレード手順書
GitBook提供

Tips

  • マニュアルの使い方

Copyright © CIMTOPS Corporation. All Rights Reserved.

このページ内
  • はじめに
  • 対象
  • 概要
  • 設定ファイル
  • ファイルの場所
  • 変更方法
  • 搭載メモリーについて
  • 推奨設定
  • 適用方法
  • 設定サンプル
  • 定期的なAnalyze実行
PDFとしてエクスポート
  1. メンテナンス

オンプレミス版_PostgreSQL推奨設定

はじめに

対象

このマニュアルは、オンプレミス版 i-Reporterをご契約のお客様向けです。

概要

ConMas i-Reporterシステムの、データーベース(PostgreSQL)のチューニングに関する資料です。 帳票検索などのレスポンス改善を目的とした推奨設定を掲載しています。

設定ファイル

ファイルの場所

[PostgreSQLデーター格納ディレクトリ]\postgersql.conf

変更方法

上記のconfファイルをメモ帳でひらき、次ページ以降の内容で更新します。

【注意】 変更前には、必ず postgressql.conf をコピーなどでバックアップしてください。

搭載メモリーについて

  • APサーバー、DBサーバー同居型 の場合:  全メモリーの半分を搭載メモリーとする

  • APサーバー、DBサーバー分離型 の場合:  全メモリーすべてを搭載メモリーとする

推奨設定

  • shared_buffers データベースが使用する共有メモリバッファの値を指定します。 推奨値:搭載メモリの 25% effective_cache_size

  • effective_cache_size 設定値(データベースキャッシュに使用するメモリサイズ)が大きいと、インデックスを使用した検索が行われやすくなります。

    推奨値:搭載メモリーの1/4~1/2

  • work_mem ソート、テーブルJOINに使用するメモリ量です。 大きくするとメモリ使用量が増え、より高速なJOINソートが可能になります。 推奨値:「メモリ搭載量-shared_buffers = work_mem × 同時接続数(※)」

    【参考】 work_mem=10MBの時、100人が同時接続した場合10MB×100人=1000MB≒1GBとなり、最大で約1GB消費します。

    ※同時接続数とは 同時にサーバーへのアクセスが必要な操作(帳票保存や検索等)を行うユーザー数です。

  • random_page_cost この値を小さく設定すると、オプティマイザがインデックスを使用した問い合わせプランを選択する傾向が強くなります。 一般的にHDDの場合は2、SSDの場合は1にします。

  • default_statistics_target PostgreSQLでは、特定のテーブルの特定のカラムごとに統計情報を取得する際の精度を指定することで、大きなテーブルでは荒くなりがちな統計情報の精度を調整することができるようになっています。 デフォルト値:100推奨値:1000(より精度を向上させるため)

適用方法

postgreSQLサービスを再起動することで適用されます。

設定サンプル

【前提】 APサーバー、DBサーバー同居型 メモリー:8GB ストレージ:HDD ※同居型のため、搭載メモリーを4GBとして計算する

【設定サンプル】

  • shared_buffers 4G×25% = 1GB

  • effective_cache_size 4G × 1/2 = 2GB

  • work_mem ※考えられる同時接続数を50で計算 4G – 1G = 50 × work_mem ≒50~60MB

  • random_page_cost HDDのため =2

  • default_statistics_target =1000

定期的なAnalyze実行

データベース内のテーブルの内容に関する統計情報を集計する処理を行います。

PostgreSQLでは統計情報を用いて効率のよい検索問い合わせを導き出しています。 この統計情報が最新の状態で集計できていない場合、効率のよい検索問い合わせができないことがあります。

Analyze処理は自動で動作しますが、一度の大量の帳票を登録するなど、運用内容によって最新の状態で集計されにくくなるケースがあります。

以下のコマンドを実行することでi-reporterで変更、追加の多いテーブルを対象にAnalyzeを実行できます。 定期的なAnalyze実行にご利用ください。

chcp 65001
SET PGPASSWORD=[PostgreSQLパスワードを入力してください。]
SET CURRENT_FOLDER=[本バッチファイルを配置したフォルダーパスを入力してください。]
echo analyze start > "%CURRENT_FOLDER%\analyze.log"
"[インストールドライブ]:\Program Files\PostgreSQL\[PostgreSQLバージョン]\bin\vacuumdb.exe" -U postgres -d irepodb  -Z -v
echo analyze result=%ERRORLEVEL% >> "%CURRENT_FOLDER%\analyze.log"
前へデータベースバックアップリストア手順次へオンプレミス版 サーバーストレージ容量の削減方法

最終更新 1 か月前