ヘッダーをスキップ
Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス
10g リリース2(10.2)
B19245-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

65 DBMS_OLAP


注意:

Oracle Database 10gでは、DBMS_OLAPパッケージが、改良されたテクノロジで置き換えられています。オラクル社ではDBMS_OLAPを使用して開発を始めることはお薦めしませんが、DBMS_OLAPのサポートは継続します。また、DBMS_OLAPを使用する既存のアプリケーションは引き続き機能します。
  • 現在新規のアプリケーションまたはかなり変更を加えたアプリケーションを開発中で、DBMS_OLAPで以前にサマリー・アドバイザを使用したことがある場合、第12章「DBMS_ADVISOR」で説明しているSQLアクセス・アドバイザを現時点から使用する必要があります。

  • DBMS_OLAP.VALIDATE_DIMENSIONを以前に使用したことがある場合、第35章「DBMS_DIMENSION」で説明しているDBMS_DIMENSION.VALIDATE_DIMENSIONを現時点から使用する必要があります。

  • DBMS_OLAP.ESTIMATE_MVIEW_SIZEを以前に使用したことがある場合、第61章「DBMS_MVIEW」で説明しているDBMS_MVIEW.ESTIMATE_MVIEW_SIZEを現時点から使用する必要があります。


下位互換性を保つという理由でこの項で説明しているDBMS_OLAPパッケージは、マテリアライズド・ビュー分析の収集および任意のPL/SQLプログラムからコールできるアドバイザ機能を提供します。一部のファンクションは出力表を生成します。


関連項目:

詳細は、『Oracle Databaseデータ・ウェアハウス・ガイド』を参照してください。

この章では、次の項目について説明します。


DBMS_OLAPの使用方法

この項では、DBMS_OLAPパッケージの使用に関連する項目について説明します。


概要

DBMS_OLAPは、7つの主要機能、つまりマテリアライズド・ビューの計画の推奨、マテリアライズド・ビューの計画の評価、レポートおよびスクリプトの生成、リポジトリ管理、ワークロード管理、フィルタ管理およびディメンションの妥当性チェックを実行します。

マテリアライズド・ビューの計画の推奨および評価のファンクションを実行する場合、ワークロード情報はユーザーから提供することもアドバイザ・エンジンで合成することもできます。ワークロード情報をユーザーから提供する場合は、そのワークロードで参照するすべての表およびマテリアライズド・ビューのカーディナリティ情報が必要です。アドバイザ・エンジンで合成する場合は、ディメンション・オブジェクトの他、すべてのディメンション表、ファクト表およびマテリアライズド・ビューのカーディナリティ情報が必要です。カーディナリティ情報の収集には、DBMS_STATS.GATHER_TABLE_STATSプロシージャを使用してください。これらの機能が完了すると、レポートおよびスクリプト生成ファンクションで分析結果を表示できます。

ワークロード管理機能は3種類のワークロード、つまりユーザー定義ワークロード、SQLキャッシュ・ワークロードおよびOracle Traceワークロードを処理します。ユーザー指定のワークロードを処理するには、そのユーザーのスキーマにユーザー定義のワークロード表が必要です。Oracle Traceワークロードを処理するには、収集したワークロード統計を、Oracle Traceフォーマッタを実行して前処理し、ユーザーのスキーマにあるデフォルトのV表に組み込む必要があります。


ビュー

いくつかのビューは、DBMS_OLAPで作成します。いずれのビューもSYSTEMスキーマに存在します。これらのビューにアクセスするには、DBAロールを取得する必要があります。

SYSTEM.MVIEW_EVALUATIONS

表65-1 SYSTEM.MVIEW_EVALUATIONS

NULL可 データ型 説明

RUNID

NOT NULL

NUMBER

一意のアドバイザ・コールを識別する実行ID。

MVIEW_OWNER

-

VARCHAR2(30)

マテリアライズド・ビューの所有者。

MVIEW_NAME

-

VARCHAR2(30)

このデータベースにある既存のマテリアライズド・ビュー名。

RANK

NOT NULL

NUMBER

BENEFIT_TO_CSOT_RATIOの降順で示した、このマテリアライズド・ビューの順位。

STORAGE_IN_BYTES

-

NUMBER

マテリアライズド・ビューのサイズ(バイト)。

FREQUENCY

-

NUMBER

このマテリアライズド・ビューがワークロードに記述される回数。

CUMULATIVE_BENEFIT

-

NUMBER

マテリアライズド・ビューの累積利点。

BENEFIT_TO_COST_RATIO

NOT NULL

NUMBER

CUMULATIVE_BENEFITSTORAGE_IN_BYTESの比率。


SYSTEM.MVIEW_EXCEPTIONS

表65-2 SYSTEM.MVIEW_EXCEPTIONS

NULL可 データ型 説明

RUNID

-

NUMBER

一意のアドバイザ・コールを識別する実行ID。

OWNER

-

VARCHAR2(30)

所有者名。

TABLE_NAME

-

VARCHAR2(30)

表名。

DIMENSION_NAME

-

VARCHAR2(30)

ディメンション名。

RELATIONSHIP

-

VARCHAR2(11)

違反リレーション名。

BAD_ROWID

-

ROWID

違反エントリの場所。


SYSTEM.MVIEW_FILTER

表65-3 SYSTEM.MVIEW_FILTER

NULL可 データ型 説明

FILTERID

NOT NULL

NUMBER

このフィルタを使用した処理を識別するのに使用する一意の番号。

SUBFILTERNUM

NOT NULL

NUMBER

すべてのフィルタ項目をまとめてグループ化する一意のID番号。対応するフィルタ・ヘッダー・レコードは、MVIEW_LOG表にあります。

SUBFILTERTYPE

-

VARCHAR2(12)

フィルタ項目番号。

STR_VALUE

-

VARCHAR2(1028)

文字列が必要な項目の文字列属性。

NUM_VALUE1

-

NUMBER

番号が必要な項目の数値(下限)。

NUM_VALUE2

-

NUMBER

番号が必要な項目の数値(上限)。

DATE_VALUE1

-

DATE

日付が必要な項目の日付(下限)。

DATE_VALUE2

-

DATE

日付が必要な項目の日付(上限)。


SYSTEM.MVIEW_FILTERINSTANCE

表65-4 SYSTEM.MVIEW_FILTERINSTANCE

NULL可 データ型 説明

RUNID

NOT NULL

NUMBER

このフィルタを使用した処理を識別するのに使用する一意の番号。

FILTERID

-

NUMBER

すべてのフィルタ項目をまとめてグループ化する一意のID番号。対応するフィルタ・ヘッダー・レコードは、MVIEW_LOG表にあります。

SUBFILTERNUM

-

NUMBER

フィルタ項目番号。

SUBFILTERTYPE

-

VARCHAR2(12)

フィルタ項目タイプ。

STR_VALUE

-

VARCHAR2(1028)

文字列が必要な項目の文字列属性。

NUM_VALUE1

-

NUMBER

番号が必要な項目の数値(下限)。

NUM_VALUE2

-

NUMBER

番号が必要な項目の数値(上限)。

DATE_VALUE1

-

DATE

日付が必要な項目の日付(下限)。

DATE_VALUE2

-

DATE

日付が必要な項目の日付(上限)。


SYSTEM.MVIEW_LOG

表65-5 SYSTEM.MVIEW_LOG

NULL可 データ型 説明

ID

NOT NULL

NUMBER

表エントリの識別に使用する一意の名前。この番号を作成するにはCREATE_IDルーチンを使用する必要があります。

FILTERID

-

NUMBER

オプションのフィルタID。0(ゼロ)はユーザー指定のフィルタが処理に割り当てられていないことを示します。

RUN_BEGIN

-

DATE

処理が開始された日付。

RUN_END

-

DATE

処理が終了した日付。

TYPE

-

VARCHAR2(11)

処理のタイプを識別する名前。

STATUS

-

VARCHAR2(11)

現行の処理ステータス。

MESSAGE

-

VARCHAR2(2000)

現行の処理または条件を示す情報メッセージ。

COMPLETED

-

NUMBER

操作の完了ステップ数。

TOTAL

-

NUMBER

実行するステップの合計数。

ERROR_CODE

-

VARCHAR2(20)

エラー発生時のOracleエラー・コード。


SYSTEM.MVIEW_RECOMMENDATIONS

表65-6 SYSTEM.MVIEW_RECOMMENDATIONS

NULL可 データ型 説明

RUNID

-

NUMBER

一意のアドバイザ・コールを識別する実行ID。

ALL_TABLES

-

VARCHAR2(2000)

構造化リコメンデーションの完全修飾表名のカンマで区切られたリスト。

FACT_TABLES

-

VARCHAR2(1000)

構造化リコメンデーションのグループ・レベル(存在する場合)のカンマで区切られたリスト。

GROUPING_LEVELS

-

VARCHAR2(2000)

-

QUERY_TEXT

-

LONG

RECOMMENDED_ACTIONCREATEの場合のマテリアライズド・ビューの問合せテキスト。それ以外の場合はNULLです。

RECOMMENDATION_NUMBER

NOT NULL

NUMBER

このリコメンデーションに対する一意の識別子。

RECOMMENDED_ACTION

-

VARCHAR2(6)

CREATERETAINまたはDROP

MVIEW_OWNER

-

VARCHAR2(30)

RECOMMENDED_ACTIONRETAINまたはDROPの場合のマテリアライズド・ビューの所有者。それ以外の場合はNULLです。

MVIEW_NAME

-

VARCHAR2(30)

RECOMMENDED_ACTIONRETAINまたはDROPの場合のマテリアライズド・ビューの名前。それ以外の場合はNULLです。

STORAGE_IN_BYTES

-

NUMBER

実際または見積りした記憶域(バイト)。

PCT_PERFORMANCE_GAIN

-

NUMBER

以前のリコメンデーションがすべて受け入れられたと仮定し、当初の状態と比較して、このリコメンデーションを受け入れることによって期待できるパフォーマンスの改善率。不明な場合はNULLです。

BENEFIT_TO_COST_RATIO

NOT NULL

NUMBER

マテリアライズド・ビューのサイズ(バイト)に対するパフォーマンスの改善率。不明な場合はNULLです。


SYSTEM.MVIEW_WORKLOAD

表65-7 SYSTEM.MVIEW_WORKLOAD

NULL可 データ型 説明

APPLICATION

-

VARCHAR2(30)

問合せのオプションのアプリケーション名。

CARDINALITY

-

NUMBER

問合せのすべての表の合計カーディナリティ。

WORKLOADID

-

NUMBER

一意のサンプリングを識別するワークロードID。

FREQUENCY

-

NUMBER

問合せが実行された回数。

IMPORT_TIME

-

DATE

項目が収集された日付。

LASTUSE

-

DATE

最終実行の日付。

OWNER

-

VARCHAR2(30)

最後に問合せを実行したユーザー。

PRIORITY

-

NUMBER

ユーザー指定の問合せランキング。

QUERY

-

LONG

問合せテキスト。

QUERYID

-

NUMBER

一意の問合せを識別するID番号。

RESPONSETIME

-

NUMBER

実行時間(秒)。

RESULTSIZE

-

NUMBER

問合せで選択した合計バイト数。



推奨されないサブプログラム

DBMS_OLAPの各サブプログラムは、改良されたテクノロジで置き換えられています。詳細は第12章「DBMS_ADVISOR」第35章「DBMS_DIMENSION」および第61章「DBMS_MVIEW」を参照してください。すべてのDBMS_OLAPサブプログラムは、Oracle Database 10gでは使用されなくなります。オラクル社ではサブプログラムのサポートを継続しますが、ドキュメントに掲載しているのは下位互換性を保つという理由のみからです。


DBMS_OLAPサブプログラムの要約


注意:

DBMS_OLAPサブプログラムは、改良されたテクノロジで次のように置き換えられています。
  • 現在新規のアプリケーションまたはかなり変更を加えたアプリケーションを開発中で、DBMS_OLAPで以前にサマリー・アドバイザを使用したことがある場合、第12章「DBMS_ADVISOR」で説明しているSQLアクセス・アドバイザを現時点から使用する必要があります。

  • DBMS_OLAP.VALIDATE_DIMENSIONを以前に使用したことがある場合、第35章「DBMS_DIMENSION」で説明しているDBMS_DIMENSION.VALIDATE_DIMENSIONを現時点から使用する必要があります。

  • DBMS_OLAP.ESTIMATE_MVIEW_SIZEを以前に使用したことがある場合、第61章「DBMS_MVIEW」で説明しているDBMS_MVIEW.ESTIMATE_MVIEW_SIZEを現時点から使用する必要があります。


表65-8 DBMS_OLAPパッケージのサブプログラム

サブプログラム 説明

ADD_FILTER_ITEMプロシージャ


推奨プロセスで使用中のコンテンツをフィルタにかけます(「推奨されないサブプログラム」を参照)。

CREATE_IDプロシージャ


新しいワークロード・コレクション、フィルタまたはアドバイザ実行で使用する内部IDを生成します(「推奨されないサブプログラム」を参照)。

ESTIMATE_MVIEW_SIZEプロシージャ


作成するマテリアライズド・ビューのサイズを、バイトと行で見積もります(「推奨されないサブプログラム」を参照)。

EVALUATE_MVIEW_STRATEGYプロシージャ


既存の各マテリアライズド・ビューの使用率を測定します(「推奨されないサブプログラム」を参照)。

GENERATE_MVIEW_REPORTプロシージャ


指定されたアドバイザ実行でHTMLベースのレポートを生成します(「推奨されないサブプログラム」を参照)。

GENERATE_MVIEW_SCRIPTプロシージャ


サマリー・アドバイザ推奨を実装するためのSQLコマンドが含まれた簡単なスクリプトを生成します(「推奨されないサブプログラム」を参照)。

LOAD_WORKLOAD_CACHEプロシージャ


SQLキャッシュ・ワークロードを取得します(「推奨されないサブプログラム」を参照)。

LOAD_WORKLOAD_TRACEプロシージャ


Oracle Traceが収集したワークロードをロードします(「推奨されないサブプログラム」を参照)。

LOAD_WORKLOAD_USERプロシージャ


ユーザー定義ワークロードをロードします(「推奨されないサブプログラム」を参照)。

PURGE_FILTERプロシージャ


特定のフィルタまたはすべてのフィルタを削除します(「推奨されないサブプログラム」を参照)。

PURGE_RESULTSプロシージャ


すべての結果または特定の実行の結果を削除します(「推奨されないサブプログラム」を参照)。

PURGE_WORKLOADプロシージャ


すべてのワークロードまたは特定のコレクションを削除します(「推奨されないサブプログラム」を参照)。

RECOMMEND_MVIEW_STRATEGYプロシージャ


作成、保持または削除するマテリアライズド・ビューについて、リコメンデーション・セットを生成します(「推奨されないサブプログラム」を参照)。

SET_CANCELLEDプロシージャ


結果が戻されるまでの時間が長すぎる場合にアドバイザを停止します(「推奨されないサブプログラム」を参照)。

VALIDATE_DIMENSIONプロシージャ


ディメンションで指定した関連が正しいことを検証します(「推奨されないサブプログラム」を参照)。

VALIDATE_WORKLOAD_CACHEプロシージャ


ロード処理の実行前にSQLキャッシュ・ワークロードを検証します(「推奨されないサブプログラム」を参照)。

VALIDATE_WORKLOAD_TRACEプロシージャ


ロード処理の実行前にOracle Traceワークロードを検証します(「推奨されないサブプログラム」を参照)。

VALIDATE_WORKLOAD_USERプロシージャ


ロード処理の実行前にユーザー指定ワークロードを検証します(「推奨されないサブプログラム」を参照)。



ADD_FILTER_ITEMプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、既存のフィルタに新しいフィルタ項目を追加して制限を強化します。ワークロードの分析対象を制限するフィルタも作成します。

構文

ADD_FILTER_ITEM (
   filter_id    IN NUMBER,
   filter_name  IN VARCHAR2,
   string_list  IN VARCHAR2,
   number_min   IN NUMBER,
   number_max   IN NUMBER,
   date_min     IN VARCHAR2,
   date_max     IN VARCHAR2);

パラメータ

表65-9 ADD_FILTER_ITEMプロシージャのパラメータ

パラメータ 説明

filter_id

フィルタを一意に示すID。DBMS_OLAP.CREATE_IDプロシージャで生成します。

filter_name

  • APPLICATION: 文字列 - ワークロードのAPPLICATION列。SQLキャッシュ・ワークロードのロード方法の例を次に示します。

  • BASETABLE: 文字列 - ワークロードの問合せの対象となる表。名前は所有者および表名を含めて完全修飾する必要があります(たとえば、SH.SALES)。

  • CARDINALITY: 数値 - 問合せの対象となるカーディナリティの合計。

  • FREQUENCY: 数値 - ワークロードのFREQUENCY列。

  • LASTUSE: 日付 - ワークロードのLASTUSE列。SQLキャッシュ・ワークロードでは使用しません。

  • OWNER: 文字列 - ワークロードのOWNER列。所有者は、すべてを大文字で記述するわけではないことを明示的に定義しないかぎり、大文字にする必要があります。

  • PRIORITY: 数値 - ワークロードのPRIORITY列。SQLキャッシュ・ワークロードでは使用しません。

  • RESPONSETIME: 数値 - ワークロードのRESPONSE TIME列。SQLキャッシュ・ワークロードでは使用しません。

  • SCHEMA: 文字列 - ワークロードのフィルタの対象となるスキーマ。

  • TRACENAME: 文字列 - Oracle Traceのコレクション名のリスト。トレース・ワークロードでのみ使用されます。

string_list

カンマで区切られた文字列のリスト。文字列タイプのフィルタ項目でのみ使用されます。

number_min

数値範囲の下限。NULLは可能最低値を示します。数値タイプのパラメータでのみ使用されます。

number_max

数値範囲の上限。NULLは上限ではありません。NULLは可能最高値を示します。数値タイプのパラメータでのみ使用されます。

date_min

日付範囲の下限。NULLは日付の可能最低値を示します。日付タイプのパラメータでのみ使用されます。

date_max

日付範囲の上限。NULLは日付の可能最高値を示します。日付タイプのパラメータでのみ使用されます。



CREATE_IDプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、アドバイザまたはディメンション検証の実行のフィルタ、ワークロードまたは結果を識別するために使用する一意の識別子を作成します。

構文

CALL DBMS_OLAP.CREATE_ID (
  id        OUT NUMBER);

パラメータ

表65-10 CREATE_IDプロシージャのパラメータ

パラメータ 説明

id

フィルタ、ワークロードまたはアドバイザ実行を識別するのに使用する一意の識別子。



ESTIMATE_MVIEW_SIZEプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャでは、作成するマテリアライズド・ビューのサイズをバイトおよび行数で見積もります。

構文

DBMS_OLAP.ESTIMATE_MVIEW_SIZE (
   stmt_id       IN  VARCHAR2,
   select_clause IN  VARCHAR2,
   num_rows      OUT NUMBER,
   num_bytes     OUT NUMBER);

パラメータ

表65-11 ESTIMATE_MVIEW_SIZEプロシージャのパラメータ

パラメータ 説明

stmt_id

EXPLAIN PLANで文を識別するために使用する任意の文字列。

select_clause

分析用のSELECT文。

num_rows

推測カーディナリティ。

num_bytes

推測バイト数。



EVALUATE_MVIEW_STRATEGYプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャでは、ワークロードから収集したマテリアライズド・ビューの使用統計に基づいて、既存の各マテリアライズド・ビューの使用率を測定します。workload_idはオプションです。指定しない場合、EVALUATE_MVIEW_STRATEGYには仮定ワークロードが使用されます。

構文

DBMS_OLAP.EVALUATE_MVIEW_STRATEGY (
run_id        IN NUMBER,
workload_id   IN NUMBER,
filter_id     IN NUMBER);

パラメータ

表65-12 EVALUATE_MVIEW_STRATEGYプロシージャのパラメータ

パラメータ 説明

run_id

DBMS_OLAP.CREATE_IDプロシージャで生成されるIDで、実行結果の識別に使用されます。

workload_id

現行のリポジトリのワークロードにマップされるオプションのワークロードID。すべてのワークロードを選択する場合はパラメータDBMS_OLAP.WORKLOAD_ALLを使用します。

filter_id

ワークロードに使用するフィルタを指定します。値DBMS_OLAP.FILTER_NONEはフィルタリングを行わないことを示します。


使用上の注意

DBMS_OLAP.PURGE_RESULTSプロシージャをコールすることで、未使用の結果を定期的にシステムからパージできます。


GENERATE_MVIEW_REPORTプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、指定されたアドバイザ実行でHTMLベースのレポートを生成します。

構文

DBMS_OLAP.GENERATE_MVIEW_REPORT (
   filename     IN VARCHAR2,
   id           IN NUMBER,
   flags        IN NUMBER);

パラメータ

表65-13 GENERATE_MVIEW_REPORTプロシージャのパラメータ

パラメータ 説明

filename

HTMLデータを受信するための完全修飾出力ファイル名。Oracleサーバーでは、ファイル・アクセスはOracleストアド・プロシージャ内に限定されます。ファイルのアクセス許可の詳細は、『Oracle Database Java開発者ガイド』を参照してください。

id

アドバイザ実行を識別するID。すべてのアドバイザ実行をレポートすることを示すには、パラメータDBMS_OLAP.RUNID_ALLを使用します。

flags

レポートするセクションを示すビット・マスク・フラグ。

  • DBMS_OLAP.RPT_ACTIVITY --アクティビティ全般

  • DBMS_OLAP.RPT_JOURNAL --実行時ジャーナル

  • DBMS_OLAP.RPT_WORKLOAD_FILTER -- フィルタ

  • DBMS_OLAP.RPT_WORKLOAD_DETAIL -- ワークロード情報

  • DBMS_OLAP.RPT_WORKLOAD_QUERY -- ワークロード問合せ情報

  • DBMS_OLAP.RPT_RECOMMENDATION -- リコメンデーション

  • DBMS_OLAP.RPT_USAGE -- マテリアライズド・ビューの使用方法

  • DBMS_OLAP.RPT_ALL -- すべてのセクション



GENERATE_MVIEW_SCRIPTプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、サマリー・アドバイザ推奨を実装するためのSQLコマンドが含まれた簡単なスクリプトを生成します。

構文

DBMS_OLAP.GENERATE_MVIEW_SCRIPT(
   filename      IN VARCHAR2,
   id            IN NUMBER,
   tspace        IN VARCHAR2);

パラメータ

表65-14 GENERATE_MVIEW_SCRIPTプロシージャのパラメータ

パラメータ 説明

filename

HTMLデータを受信するための完全修飾出力ファイル名。Oracleサーバーでは、ファイル・アクセスはOracleストアド・プロシージャ内に限定されます。ファイルのアクセス許可の詳細は、『Oracle Database Java開発者ガイド』を参照してください。

id

アドバイザ実行を識別するID。すべてのアドバイザ実行をレポートすることを示すには、DBMS_OLAP.RUNID_ALLパラメータを使用します。

tspace

マテリアライズド・ビューの作成時に使用するオプションの表領域名。



LOAD_WORKLOAD_CACHEプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、SQLキャッシュ・ワークロードをロードします。

構文

DBMS_OLAP.LOAD_WORKLOAD_CACHE (
   workload_id  IN NUMBER,
   flags        IN NUMBER,
   filter_id    IN NUMBER,
   application  IN VARCHAR2,
   priority     IN NUMBER);

パラメータ

表65-15 LOAD_WORKLOAD_CACHEプロシージャのパラメータ

パラメータ 説明

workload_id

HTMLデータを受信するための完全修飾出力ファイル名。Oracleサーバーでは、ファイル・アクセスはOracleストアド・プロシージャ内に限定されます。ファイルのアクセス許可の詳細は、『Oracle Database Java開発者ガイド』を参照してください。

flags

  • DBMS_OLAP.WORKLOAD_OVERWRITE: 指定したコレクションIDが所有するワークロードから、既存の問合せを明示的に削除するロード・ルーチン。

  • DBMS_OLAP.WORKLOAD_APPEND: ワークロードに既存の問合せを保存するロード・ルーチン。ロード処理で収集した問合せは指定のワークロードの終わりに追加されます。

  • DBMS_OLAP.WORKLOAD_NEW: ワークロードに既存の問合せがないものと仮定するロード・ルーチン。既存のワークロード要素が見つかると、コールが失敗してエラーが発生します。

注意: 各フラグの動作は、LOAD_WORKLOAD処理に関係なく同じです。

filter_id

ロードするワークロードにフィルタを指定します。

application

デフォルトのビジネス・アプリケーション名。この値はターゲット・ワークロードに見つからない場合、問合せに使用されます。

priority

ターゲット・ワークロードのすべての問合せに割り当てられる、デフォルトのビジネス優先順位。



LOAD_WORKLOAD_TRACEプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、Oracle Traceワークロードをロードします。

構文

DBMS_OLAP.LOAD_WORKLOAD_TRACE (
   workload_id  IN NUMBER,
   flags        IN NUMBER,
   filter_id    IN NUMBER,
   application  IN VARCHAR2,
   priority     IN NUMBER,
   owner_name   IN VARCHAR2);

パラメータ

表65-16 LOAD_WORKLOAD_TRACEプロシージャのパラメータ

パラメータ 説明

workload_id

HTMLデータを受信するための完全修飾出力ファイル名。Oracleサーバーでは、ファイル・アクセスはOracleストアド・プロシージャ内に限定されます。ファイルのアクセス許可の詳細は、『Oracle Database Java開発者ガイド』を参照してください。

flags

  • DBMS_OLAP.WORKLOAD_OVERWRITE: 指定したコレクションIDが所有するワークロードから、既存の問合せを明示的に削除するロード・ルーチン。

  • DBMS_OLAP.WORKLOAD_APPEND: ワークロードに既存の問合せを保存するロード・ルーチン。ロード処理で収集した問合せは指定のワークロードの終わりに追加されます。

  • DBMS_OLAP.WORKLOAD_NEW: ワークロードに既存の問合せがないものと仮定するロード・ルーチン。既存のワークロード要素が見つかると、コールが失敗してエラーが発生します。

注意: 各フラグの動作は、LOAD_WORKLOAD処理に関係なく同じです。

filter_id

ロードするワークロードにフィルタを指定します。

application

デフォルトのビジネス・アプリケーション名。この値はターゲット・ワークロードに見つからない場合、問合せに使用されます。

priority

ターゲット・ワークロードのすべての問合せに割り当てられる、デフォルトのビジネス優先順位。

owner_name

Oracle Traceデータを含むスキーマ。省略した場合は現行のユーザーが使用されます。



LOAD_WORKLOAD_USERプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、ユーザー定義ワークロードをロードします。

構文

DBMS_OLAP.LOAD_WORKLOAD_USER (
   workload_id   IN    NUMBER,
   flags         IN    NUMBER,
   filter_id     IN    NUMBER,
   owner_name    IN    VARCHAR2,
   table_name    IN    VARCHAR2);

パラメータ

表65-17 LOAD_WORKLOAD_USERプロシージャのパラメータ

パラメータ 説明

workload_id

DBMS_OLAP.CREATE_IDコールによって戻される必須ID。

flags

  • DBMS_OLAP.WORKLOAD_OVERWRITE: 指定したコレクションIDが所有するワークロードから、既存の問合せを明示的に削除するロード・ルーチン。

  • DBMS_OLAP.WORKLOAD_APPEND: ワークロードに既存の問合せを保存するロード・ルーチン。ロード処理で収集した問合せは指定のワークロードの終わりに追加されます。

  • DBMS_OLAP.WORKLOAD_NEW: ワークロードに既存の問合せがないものと仮定するロード・ルーチン。既存のワークロード要素が見つかると、コールが失敗してエラーが発生します。

注意: 各フラグの動作は、LOAD_WORKLOAD処理に関係なく同じです。

filter_id

ロードするワークロードにフィルタを指定します。

owner_name

ユーザー指定の表またはビューを含むスキーマ。

table_name

有効なワークロード・データを含む表名またはビュー名。



PURGE_FILTERプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、任意の時間にフィルタを削除します。特定のフィルタを削除することも、すべてのフィルタを削除することもできます。

構文

DBMS_OLAP.PURGE_FILTER (
   filter_id    IN    NUMBER);

パラメータ

表65-18 PURGE_FILTERプロシージャのパラメータ

パラメータ 説明

filter_id

DBMS_OLAP.FILTER_ALLパラメータは、すべてのフィルタが削除されることを示します。



PURGE_RESULTSプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

DBMS_OLAPパッケージの多くのプロシージャは、RECOMMEND_MVIEW_STRATEGYの推奨結果、EVALUATE_MVIEW_STRATEGYの評価結果およびVALIDATE_DIMENSIONのディメンション検証結果などの出力をシステム表に生成します。これらの出力が不要になったときは、プロシージャPURGE_RESULTSで削除します。すべての結果を削除することも、特定の実行の結果を削除することもできます。

構文

DBMS_OLAP.PURGE_RESULTS (
   run_id    IN   NUMBER);

パラメータ

表65-19 PURGE_RESULTSプロシージャのパラメータ

パラメータ 説明

run_id

DBMS_OLAP.CREATE_IDプロシージャで生成するID。RECOMMEND_MVIEW_STRATEGYEVALUATE_MVIEW_STRATEGYまたはVALIDATE_DIMENSIONのいずれかの実行に関連付けます。このような実行をすべて指定するには値DBMS_OLAP.RUNID_ALLを使用します。



PURGE_WORKLOADプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、不要になったワークロードを削除します。すべてのワークロードを削除することも、特定のコレクションを削除することもできます。

構文

DBMS_OLAP.PURGE_WORKLOAD (
   workload_id   IN   NUMBER);

パラメータ

表65-20 PURGE_WORKLOADプロシージャのパラメータ

パラメータ 説明

workload_id

create_idコールによって最初に割り当てられるID番号。workload_idの値をDBMS_OLAP.WORKLOAD_ALLに設定すると、現行のユーザーのすべてのワークロードが削除されます。



RECOMMEND_MVIEW_STRATEGYプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャは、作成、保持または削除するマテリアライズド・ビューについてリコメンデーション・セットを生成します。これは、ワークロード(Oracle Trace、ユーザー・ワークロードまたはSQLキャッシュで収集)の情報およびDBMS_STATS.GATHER_TABLE_STATSで収集された表および列のカーディナリティ統計の分析に基づいて行われます。

RECOMMEND_MVIEW_STRATEGYでは、GATHER_TABLE_STATSプロシージャを実行して表および列のカーディナリティ統計を収集し、ワークロード統計を収集および書式化しておく必要があります。

ワークロードはそのワークロードでの各要求件数を判断するために集計されます。この件数は最適化プロセスで重み付け要因として使用されます。workload_idを指定しない場合、RECOMMEND_MVIEW_STRATEGYでは、ディメンション定義およびその他の埋込み統計に基づいた仮定ワークロードが使用されます。

指定されたファクト表を含むすべてのディメンショナル・マテリアライズド・ビューの領域は、ワークロード全体のパフォーマンスを最適化するマテリアライズド・ビューのセットを示します。推奨結果はシステム表に格納されます。アクセスするにはビューSYSTEM.MVIEW_RECOMMENDATIONSを使用します。

構文

DBMS_OLAP.RECOMMEND_MVIEW_STRATEGY (
   run_id             IN  NUMBER,
   workload_id        IN  NUMBER,
   filter_id          IN  NUMBER,
   storage_in_bytes   IN  NUMBER,
   retention_pct      IN  NUMBER,
   retention_list     IN  VARCHAR2,
   fact_table_filter  IN  VARCHAR2);

パラメータ

表65-21 RECOMMEND_MVIEW_STRATEGYプロシージャのパラメータ

パラメータ 説明

run_id

DBMS_OLAP.CREATE_IDプロシージャで生成されるIDで、実行結果を一意に識別するのに使用されます。

workload_id

現行のリポジトリのワークロードにマップされるオプションのワークロードID。すべてのワークロードを選択する場合はパラメータDBMS_OLAP.WORKLOAD_ALLを使用します。

workload_idNULLに設定すると、仮定ワークロードが使用されます。

filter_id

一連のユーザー指定フィルタ項目にマップされるオプションのフィルタID。フィルタリングを行わない場合は、パラメータDBMS_OLAP.FILTER_NONEを使用します。

storage_in_bytes

マテリアライズド・ビューの格納に使用できる記憶域の最大数(バイト)。負の数は指定できません。

retention_pct

実際または仮定されるワークロードに基づき、保持する必要がある既存のマテリアライズド・ビュー記憶域を0から100パーセントで指定します。

使用率で順位付けした累積領域が指定の保存しきい値内の場合(またはretention_listに明示的にリストされている場合)、マテリアライズド・ビューは保持されます。使用率がNULLのマテリアライズド・ビュー(たとえば、非ディメンショナルのマテリアライズド・ビュー)は、常に保持されます。

retention_list

マテリアライズド・ビュー表名のカンマで区切られたリスト。このリストに表示されるマテリアライズド・ビューに対して、削除の推奨は行いません。

fact_table_filter

実際のワークロードまたは理想的なワークロードをフィルタにかける際に使用する、ファクト表のオプションのリスト。


使用上の注意

PURGE_RESULTSプロシージャをコールすることで、使用していない結果を定期的にシステムからパージできます。


SET_CANCELLEDプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

プロシージャRECOMMEND_MVIEW_STRATEGYを使用したリコメンデーション作成に時間がかかりすぎる場合は、プロシージャSET_CANCELLEDをコールし、該当する推奨プロセスのrun_idを渡すことでサマリー・アドバイザを停止できます。

構文

DBMS_OLAP.SET_CANCELLED (
   run_id     IN  NUMBER);

パラメータ

表65-22 SET_CANCELLEDプロシージャのパラメータ

パラメータ 説明

run_id

アドバイザの分析処理を一意に識別するID。このコールは、長時間実行のワークロード・コレクションやアドバイザの分析セッションを取り消す場合に使用します。



VALIDATE_DIMENSIONプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャでは、既存のディメンション・オブジェクトで指定されている階層関係と属性関係、および結合関係が正しいことを検証します。これにより、参照整合性が保守されていることを迅速に確認できます。

検証結果はシステム表に格納されます。アクセスするにはビューSYSTEM.MVIEW_EXCEPTIONSを使用します。

構文

DBMS_OLAP.VALIDATE_DIMENSION (
   dimension_name    IN VARCHAR2,
   dimension_owner   IN VARCHAR2,
   incremental       IN BOOLEAN,
   check_nulls       IN BOOLEAN,
   run_id            IN NUMBER);

パラメータ

表65-23 VALIDATE_DIMENSIONプロシージャのパラメータ

パラメータ 説明

dimension_name

分析するディメンション名。

dimension_owner

ディメンション所有者の名前。

incremental

TRUEの場合は、このディメンションの表のsumdelta$表で指定された行に対してのみ、テストが実行されます。そうでない場合は、すべての行をチェックします。

check_nulls

  • TRUEの場合は、すべてのレベルの列がNULLでないことを検証します。それ以外の場合、このチェックは省略されます。

  • NOT NULL制約などの別の方法でNULLでないことが保証されている場合は、FALSEを指定します。

run_id

DBMS_OLAP.CREATE_IDプロシージャで生成されるIDで、実行の識別に使用されます。


使用上の注意

PURGE_RESULTSプロシージャをコールすることで、使用していない結果を定期的にシステムからパージできます。


VALIDATE_WORKLOAD_CACHEプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャでは、ロード処理の実行前にSQLキャッシュ・ワークロードを検証します。

構文

DBMS_OLAP.VALIDATE_WORKLOAD_CACHE (
   valid            OUT NUMBER,
   error            OUT VARCHAR2);

パラメータ

表65-24 VALIDATE_WORKLOAD_CACHEプロシージャのパラメータ

パラメータ 説明

valid

DBMS_OLAP.VALIDまたはDBMS_OLAP.INVALIDを戻します。ワークロードが有効であるかどうかを示します。

error

VARCHAR2、エラーのセットを戻します。



VALIDATE_WORKLOAD_TRACEプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

ロード処理の実行前にOracle Traceワークロードを検証します。

構文

DBMS_OLAP.VALIDATE_WORKLOAD_TRACE (
   owner_name       IN  VARCHAR2,
   valid            OUT NUMBER,
   error            OUT VARCHAR2);

パラメータ

表65-25 VALIDATE_WORKLOAD_TRACEプロシージャのパラメータ

パラメータ 説明

owner_name

トレース・ワークロード表の所有者。

valid

DBMS_OLAP.VALIDまたはDBMS_OLAP.INVALIDを戻します。ワークロードが有効であるかどうかを示します。

error

VARCHAR2、エラー・テキストを戻します。



VALIDATE_WORKLOAD_USERプロシージャ


注意:

詳細は、「推奨されないサブプログラム」を参照してください。

このプロシージャでは、ロード処理の実行前にユーザー指定ワークロードを検証します。

構文

DBMS_OLAP.VALIDATE_WORKLOAD_USER (
   owner_name       IN  VARCHAR2,
   table_name       IN  VARCHAR2,
   valid            OUT NUMBER,
   error            OUT VARCHAR2);

パラメータ

表65-26 VALIDATE_WORKLOAD_USERプロシージャのパラメータ

パラメータ 説明

owner_name

ユーザー・ワークロード表の所有者。

table_name

ユーザー・ワークロード表名。

valid

DBMS_OLAP.VALIDまたはDBMS_OLAP.INVALIDを戻します。ワークロードが有効であるかどうかを示します。

error

VARCHAR2、エラーのセットを戻します。