16.5 SEM_PERF.GATHER_STATS

形式

SEM_PERF.GATHER_STATS(
     just_on_values_table  IN BOOLEAN DEFAULT FALSE, 
     degree                IN NUMBER(38) DEFAULT NULL,
     estimate_percent      IN NUMBER DEFAULT DBMS_STATS.AUTO_SAMPLE_SIZE,
     value_method_opt      IN VARCHAR2 DEFAULT NULL,
     link_method_opt       IN VARCHAR2 DEFAULT NULL,
     network_owner         IN VARCHAR2 DEFAULT NULL,
     network_name          IN VARCHAR2 DEFAULT NULL);

説明

RDFおよびOWL表とその索引に関する統計を収集します。

パラメータ

just_on_values_table

TRUEは、トリプルの字句の値を含む表のみに関する統計を収集し、FALSE (デフォルト)は、RDFおよびOWLデータの記憶域に関連したすべての主要な表に関する統計を収集します。

TRUEの値はプロシージャの実行時間を短縮するため、値表に関する統計のみを収集する必要がある場合(たとえば、必要な他の統計を収集するために他のインタフェースを使用する場合)では、十分である可能性があります。

degree

並列度。パラレル実行の詳細は、『Oracle Database VLDBおよびパーティショニング・ガイド』を参照してください。

estimate_percent

サンプリングするRDF_LINK$およびRDF_VALUE$の行のパーセントが決定されます。

有効範囲は0.000001から100です。定数DBMS_STATS.AUTO_SAMPLE_SIZE (デフォルト)を使用すると、最適な統計を生成するための適切なサンプル・サイズをOracle Databaseで決定できるようになります。

value_method_opt

次のオプションのいずれかまたは両方の組合せをRDF_VALUE$表に対して受け入れます。

  • FOR ALL [INDEXED | HIDDEN] COLUMNS [size_clause]

  • FOR COLUMNS [size clause] column|attribute [size_clause] [,column|attribute [size_clause]...]

size_clauseは、size_clause := SIZE {integer | REPEAT | AUTO | SKEWONLY}として定義されます

columnは、column := column_name | (extension)として定義されます

  • integer: ヒストグラム・バケット数。範囲は[1, 2048]である必要があります。

  • REPEAT: すでにヒストグラムがある列に対してのみ、ヒストグラムを収集します。

  • AUTO: 列のデータ配分とワークロードに基づいて、ヒストグラムを収集する列が判断されます。

  • SKEWONLY: 列のデータ配分に基づいて、ヒストグラムを収集する列が判断されます。

  • column_name: 列の名前

  • extension(column_name, colume_name [, ...])の書式の列グループまたは式。

通常のデフォルトは、FOR ALL COLUMNS SIZE 2048です

link_method_opt

次のオプションのいずれかまたは両方の組合せをRDF_LINK$表に対して受け入れます。

  • FOR ALL [INDEXED | HIDDEN] COLUMNS [size_clause]

  • FOR COLUMNS [size clause] column|attribute [size_clause] [,column|attribute [size_clause]...]

size_clauseは、size_clause := SIZE {integer | REPEAT | AUTO | SKEWONLY}として定義されます

columnは、column := column_name | (extension)として定義されます

  • integer: ヒストグラム・バケット数。範囲は[1,2048]である必要があります。

  • REPEAT: すでにヒストグラムがある列に対してのみ、ヒストグラムを収集します。

  • AUTO: 列のデータ配分とワークロードに基づいて、ヒストグラムを収集する列が判断されます。

  • SKEWONLY: 列のデータ配分に基づいて、ヒストグラムを収集する列が判断されます。

  • column_name: 列の名前。

  • extension(column_name, colume_name [, ...])の書式の列グループまたは式。

通常のデフォルトは、FOR ALL COLUMNS SIZE AUTO FOR COLUMNS SIZE 2048 P_VALUE_ID CANON_END_NODE_ID START_NODE_ID G_ID (CANON_END_NODE_ID, START_NODE_ID) (P_VALUE_ID, CANON_END_NODE_ID) (P_VALUE_ID, START_NODE_ID)です

network_owner

セマンティク・ネットワークの所有者。(表1-2を参照してください。)

network_name

セマンティク・ネットワークの名前。(表1-2を参照してください。)

使用に関するノート

このプロシージャを使用するには、実行権限を持つユーザーとして接続する必要があります。ネットワーク所有者およびDBAには、このプロシージャを実行する権限があります。

このプロシージャは、推論パフォーマンスの向上に有効な統計情報を収集します(「推論パフォーマンスの向上」を参照)。このプロシージャは、内部的にDBMS_STATS.GATHER_TABLE_STATSプロシージャをコールしてRDFおよびOWL関連の表とその索引に関する統計を収集し、その統計をOracle Databaseのデータ・ディクショナリに格納します。DBMS_STATSパッケージの使用方法の詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。

統計の収集ではシステム・リソースが大量に使用されるため、このプロシージャは重要なアプリケーションおよび操作が悪影響を受ける可能性のない時期に実行してください。

「セマンティク・モデルおよびセマンティク・ネットワークの統計の管理」を参照してください。

次の例では、RDFおよびOWL関連の表とその索引に関する統計を収集します。

EXECUTE SEM_PERF.GATHER_STATS(network_owner=>'RDFUSER', network_name=>'NET1');