■仕様説明
PIMSYNC 2.1 以降で使用している内部データベース(PostgreSQL)では、データベースに保存したデータ量が多くなるとともに、プロセス(postgresql.exe)のメモリ使用量が大きくなります。
PIMSYNC では、接続先から読み取ったアイテムが新規作成、既存のアイテムの更新、削除のいずれに該当するのかを判定するために、過去に同期したスケジュールの情報を中間データとして内部データベースに保存しています。
このため、PIMSYNC の稼働期間とともに、内部データベースに保存される中間データの件数も多くなるため、内部データベースのプロセス(postgresql.exe)のメモリ使用量が大きくなります。
以下の対応策を検討してください。
■対応策
本FAQの添付ファイル「DBItemDeleteTool.zip」より中間データ削除ツールを解凍いただき、そちらを使用して中間データを削除してください。
使用方法などの詳細に関しては、以下のドキュメントをご確認ください。
なお、PIMSYNC 2.2 では標準のツールとして最初から同梱しています。
※中間データ削除ツールは、PIMSYNC が保存している同期済みの情報
(中間データ)を削除するものです。接続先のスケジュールを削除するものではありませんので、ご注意ください。
中間データを削除した場合、接続先から読み取ったスケジュールをまだ同期していないものとして扱います。
同期処理に与える影響については、以下のドキュメントをご参照ください。
■補足
上記の通り、同期処理に対して影響を与えるため、中間データを削除する期間に関しては、運用上、スケジュールを変更されない期間を設定することをおすすめします。
一例として、半年前のスケジュールに関して運用上ほぼ変更しない場合には、中間データ削除ツールを実行する際に、実行時点から半年前の日付を指定してください。
中間データ削除ツールによる削除処理の所要時間は、同期済みのスケジュール件数(中間データの件数)、サーバスペックにより異なります。
目安として、あるユーザで 2000 件のスケジュールを同期済みの場合、4 CPU、物理メモリ 8 GB の環境で、1 ユーザーあたり70 秒~ 80 秒程度の時間がかかります。
※上記測定時のサーバスペックの詳細は、本回答の末尾をご参照ください。
※上記は目安のため、所要時間を保証するものではありません。
実際の処理時間は、他所要時間の見積が必要な場合には、検証環境で事前にご確認してください。
また、中間データ削除ツールは、中間データの整合性を保ちつつ削除を実施し、削除が完了したものからコミットしています。
このため、実行中に停止した場合でも、その時点までで削除された中間データは削除されたままとなり、以降の同期処理も正常に実施されます。
■測定時のサーバスペック
- OS : Windows 2008 R2
- CPU : Intel Xeon CPU E5-2440 v2 1.90GHz プロセッサ × 4
- メモリ : 8GB