物理データベースでのイベント・ポーリング表の設定
各物理データベース上に物理イベント・ポーリング表を構成して、データベース内の変更を監視できます。
独自のデータベースでイベント表を構成することもできます。イベント表は、データベース内の表が変更されるたびに更新されます。
イベント・ポーリング表がOracle Databaseにある場合は、管理ツールの物理レイヤーで、イベント表をその独自のデータベース・オブジェクトで構成します。次に、イベント・ポーリング表の「データベース」ダイアログの「機能」タブで、機能PERF_PREFER_IN_LISTS
の選択が解除されていることを確認します。このガイドラインに従うことで、リスト内で許容される最大式数を超えるエラーが回避されます。
イベント・ポーリング表を作成するには、リポジトリ作成ユーティリティ(RCU)を実行し、物理データベース内にBIPLATFORMスキーマを作成します。RCUによってS_NQ_EPTという名前のイベント・ポーリング表が作成されます。リポジトリ作成ユーティリティの実行の詳細は、Oracle Analytics Serverのインストールと構成を参照してください。
イベント表は次の表に示す構造である必要があります。イベント表の配置場所によっては、一部の列にnull値を格納できます。列の名前は、次の表に記載されている列名に一致する必要があります。表示されているデータ・タイプは、Oracle Database用です。
イベント表の列 | データ型 | 説明 |
---|---|---|
CATALOG_NAME |
VARCHAR2 |
更新された物理表が位置するカタログの名前。 イベント表が、更新された物理表と同じデータベースにない場合のみ、CATALOG_NAME列を移入します。それ以外の場合は、null値に設定します。 |
DATABASE_NAME |
VARCHAR2 |
更新された物理表が位置するデータベースの名前。これは、管理ツールの物理レイヤーで定義されているデータベースの名前です。たとえば、物理データベースの名前が11308Productionで、管理ツールに表示される場合のデータベース名がSQL_Productionの場合、イベント表内のポーリングされる行には、データベース名としてSQL_Productionが含まれている必要があります。 イベント表が、更新された物理表と同じデータベースにない場合のみ、DATABASE_NAME列を移入します。それ以外の場合は、null値に設定します。 |
OTHER_RESERVED |
VARCHAR2 |
将来の拡張に備えて予約されています。この列は、null値に設定する必要があります。 |
SCHEMA_NAME |
VARCHAR2 |
更新された物理表が位置するスキーマの名前。 イベント表が、更新される物理表と同じデータベースにない場合のみ、SCHEMA_NAME列を移入します。それ以外の場合は、null値に設定します。 |
TABLE_NAME |
VARCHAR2 |
更新された物理表の名前。この名前は、管理ツールの物理レイヤーで表に対して定義されている名前に一致している必要があります。 null値は指定できません。 |
UPDATE_TS |
DATE |
イベント表に対する更新が発生する日時。これは、イベント表に追加される行ごとに増加する、キー(一意)値である必要があります。増加する一意の値であるためには、列のデフォルト値として現在のタイムスタンプを指定します。たとえば、Oracle Databaseの場合は、 null値は指定できません。 この列は、イベント表に追加される行ごとに増加する一意の値である必要があるため、1秒間に多くの挿入が行われる場合は、非常に高い精度の設定が必要になることがあります。このため、データベース機能の たとえば、Oracle DatabaseやTeradataの場合は、 |
UPDATE_TYPE |
NUMBER |
更新スクリプトに値1を指定して、標準の更新であることを指定します null値は使用できません。 |
Oracle BIサーバーは、イベント・ポーリング表に対して読取りと書込みの権限を持っている必要があります。サーバーは、指定された間隔でイベント表を読み取り、変更されたデータを探します。データベース表が変更されている場合は(たとえば、ロード処理時)、イベント表に行が追加されます。イベント表に行がある場合、基礎となるデータベースに変更されたデータがあります。変更された物理表に対応するキャッシュ・エントリが無効化され、イベント表から古い行が定期的に削除されます。次にイベント表を確認するときも、処理が繰り返されます。
ノート:
クラスタ化されたデプロイメントでは、1つのイベント・ポーリング表が、クラスタ内のすべてのOracle BIサーバー・ノードで共有されます。ただし、1つのイベント・ポーリング表を、複数のOracle BIサーバー・クラスタで共有することはできません。Oracle BIサーバーに、イベント・ポーリング表(データベース内の他の表ではない)への書込み権限を与えるには、次のタスクを実行します。
-
権限を持つ接続プールを使用して、管理ツールの物理レイヤーに、個別の物理データベースを作成します。
-
削除権限を持つ接続プールにユーザーを割り当てます。
-
イベント表を使用して権限が必要なデータベースを移入します。
Oracle BIサーバーは、イベント・ポーリング表への書込み権限は持っていますが、ユーザー問合せに答えを返すために使用される表への書込み権限は持っていません。