ユーザログテーブルは、ユーザログのうち高信頼性ログを格納するための専用のテーブルです。本テーブルはエンドレスなデータ追加を実現するために、エントリという単位で領域を循環使用します。この格納構造をCYCLIC構造と呼びます。
ユーザログテーブルはSymfoware/RDBの表として実装しているため、トランザクションリカバリやメディアリカバリなどの信頼性を実現することができます。
ここでは、ユーザログテーブルを利用するためのデータベース構造の設計、および定義方法について説明します。
ユーザログテーブルは、論理構造、格納構造、物理構造からなる実表として構成され、それぞれの階層に、スキーマ、実表、DSO、DSI、およびデータベーススペースを基本要素として構成されています。また、DSIの中はエントリという単位で領域を循環利用します。なお、エントリは、データベーススペースに対応しています。それぞれの関係を、以下の図に示します。
これらの定義情報はRDBディクショナリおよびRDBディレクトリファイルによって、また運用のための情報はRDBディレクトリファイルによって管理されます。
注意
ユーザログテーブルには、インデックスはありません。
■論理構造
ユーザログテーブルの論理構造は、スキーマとその要素である実表から構成されます。
ユーザログテーブルの実表は、列と行から構成されており、デバッグ用、稼動履歴管理などの利用目的ごとに表を定義できます。
論理構造の定義の詳細は、“4.6 論理構造の定義”を参照してください。
■格納構造
格納構造は、DSO(Data Structure Organization)とDSI(Data Structure Instance)の2つから構成されます。
DSOは、実表に対してそのデータの格納構造を定義します。DSOには、以下のものがあります。
表のDSO
表のDSOは、データを格納するための格納構造の種類を定義します。
DSIは、実表のデータを格納する領域を、データベーススペースに割り付けるために定義します。DSIには、以下のものがあります。
表のDSI
表のDSIは、データを格納するための領域を、データベーススペースに割り付けるために定義します。
ユーザログテーブルの格納構造は、CYCLIC構造を利用します。CYCLIC構造は、ユーザログなどのジャーナルデータを格納するための構造です。
格納構造の定義の詳細は、“4.7 格納構造の定義”を参照してください。
■物理構造
ユーザログテーブルの物理構造は、1つまたは複数のデータベーススペースから構成されます。データベーススペースは、磁気ディスク上の、ローデバイス、ネットワークファイル、またはローカルファイルに定義します。ローデバイス、ネットワークファイル、ローカルファイルは、性能などの要件を考慮したうえで、利用される環境に合わせて選択してください。なお、可能な場合は、信頼性の観点からローデバイスでの利用を推奨します。
定義方法の詳細は、“4.5 データベーススペースの作成”を参照してください。
ユーザログテーブルでは、複数のエントリを交替運用させることでエンドレスなデータ追加が可能になります。
■ページ長の選択基準
CYCLIC構造では、DSO定義のPAGESIZEオプションで、ページ長を指定します。DSO定義については、“4.7.1 表のDSO定義”を参照してください。
ページ長の指定は、32キロバイトを推奨します。