ユーザログテーブルは、格納構造定義により、パーティション(DSI)を定義することができます。この機能により、1つのユーザログテーブルを規則に基づいて複数に分割して、独立に運用することができます。これを、パーティショニングといいます。
パーティショニングを行うことで、ユーザログテーブルの運用を、分割した単位で独立かつ並行して行うことができます。
■パーティショニングの特長
パーティショニングには、以下の特長があります。
データアクセスの高速化
運用時間の短縮
◆データアクセスの高速化
パーティショニングを利用したユーザログテーブルを細分化することで、運用単位を小さく、かつ並行に処理できます。細分化されたユーザログテーブルは内部的に独立して処理されるため、複数のトランザクションの同時実行性が高まり、ディスク入出力が分散されます。これにより、データアクセスの高速化を実現することができます。
◆運用時間の短縮
パーティションごとに独立して、rdbcycexpコマンドなどの運用コマンドを行うことができます。並行および段階的なユーザログテーブルの保全、保守が可能になるため、全体の業務運用を滞りなく行うことができます。
業務データベースがSymfoware Serverのデータベースサーバの場合、ユーザログテーブルをパーティショニングした例を以下に示します。
参考
パーティショニング機能が使われる利用目的として、障害範囲の局所化や循環運用があります。ユーザログテーブルの場合は、専用の格納構造を実装しているため、パーティショニングではなく、エントリにデータベーススペースを対応させるなどの方法で、障害範囲の局所化や循環運用を実現します。
ディスク障害などによる影響範囲を局所化するときに利用する方法です。ユーザログテーブルの場合は、エントリごとにディスクを分けることで、一部のディスクで障害が発生しても、全体を問題なく運用継続させることができます(フォールバック運用)。
年月日などの単位で領域を循環利用するときに利用する方法です。元々、ジャーナルデータなどをパーティショニングを利用して循環運用を実現していましたが、ユーザログテーブルの場合は、エントリという循環運用に向けた機能を標準装備しています。ユーザログテーブルでは年月日などをエントリに対応させて領域を循環利用します。なお、循環利用しているエントリごとのデータは、rdbcycexpコマンドによる出力ファイルをファイル単位に管理することで、世代管理も可能になります。