7.3.1 実行履歴の分割格納
データベースにHiRDBを使用する場合で,かつプロセスインスタンスの実行履歴が膨大になる場合は,実行履歴の分割格納をすると,実行履歴を検索したり削除したりするときの効率が向上します。
サービスプラットフォームでは,日付データによる境界値指定のキーレンジ分割が利用できます。また,分割されたデータをさらにプロセスインスタンス識別子によるFIXハッシュ分割で分割するマトリクス分割も利用できます。
なお,マトリクス分割を利用するためには,HiRDB Advanced High Availabilityが必要です。
キーレンジ分割およびFIXハッシュ分割の詳細は,マニュアル「HiRDB システム導入・設計ガイド」の表の横分割の種類に関する説明を参照してください。
マトリクス分割の例として,日付データによる境界値指定のキーレンジ分割とプロセスインスタンス識別子の組み合わせを次の図に示します。
(1) 日付データによる境界値指定のキーレンジ分割
サービスプラットフォームでは,プロセスインスタンスの実行履歴の管理に関するテーブルの列名(SplitKey)をキーレンジ分割のキーとして利用できます。
DBサーバ内の横分割されたRDエリアに実行履歴を分割して格納することで,RDエリア単位の操作ができます。そのため,実行履歴が膨大になるほど削除効率が向上します。
実行履歴をRDエリア単位で削除する例については,マニュアル「サービスプラットフォーム システム構築・運用ガイド」の「6.1.4 プロセスインスタンスの実行履歴を削除する」を参照してください。
(2) プロセスインスタンス識別子によるFIXハッシュ分割
サービスプラットフォームでは,プロセスインスタンスの実行履歴の管理に関するテーブルの列名(ProcessID)をFIXハッシュ分割のキーとして利用できます。
検索条件に分割キーを指定されていると,該当データがあると予測されるRDエリアだけを検索するため,検索効率が向上します。
- 注意事項
-
検索条件に分割キーが指定されていない場合,分割したすべてのRDエリアが探索対象となるため,サーバ間の通信が発生する分,分割しなかった場合よりも検索効率が劣化するおそれがあります。
リクエスト処理時に発行されるSQLは,ビジネスプロセスの内容によって異なります。発行されるSQLの詳細は,SQLトレース機能を利用してご確認ください。SQLトレース機能については,マニュアル「HiRDB UAP開発ガイド」を参照してください。
(3) 実行履歴を分割するときの注意事項
プロセスインスタンスの実行履歴を分割する場合は,次の点に注意してください。
-
HCSCサーバがセットアップ済みの環境からは移行できません。
-
RDエリア単位に実行履歴を削除する場合は,すべてのHCSCサーバの受付を停止させてください。
-
相関セットの重複チェックを強化してください。相関セットの重複チェックを強化するには,HCSCサーバセットアップ定義ファイルのdb-tbl-split-corcheck-useプロパティの設定をONにしてください。設定をOFFにすると,リクエストが正しく処理されないおそれがあります。db-tbl-split-corcheck-useプロパティの詳細は,マニュアル「サービスプラットフォーム リファレンス」の「6.4.3 HCSCサーバセットアップ定義ファイル」を参照してください。
-
相関セットが同じリクエストを要求した場合,要求したリクエストがすべてエラーになるおそれがあります。相関セットが同じリクエストを要求しないでください。