13 SEM_PERFパッケージのサブプログラム
SEM_PERFパッケージには、Oracle DatabaseでのResource Description Framework(RDF)およびWeb Ontology Language(OWL)サポートのパフォーマンスを検証および拡張するためのサブプログラムが含まれています。
この章のサブプログラムを使用するには、RDFセマンティク・グラフの概要とOWLの概要に記載されている概念および使用情報について理解しておく必要があります。
この章では、サブプログラムに関するリファレンス情報を示します(サブプログラムのリストはアルファベット順です)。
- SEM_PERF.DELETE_NETWORK_STATS
- SEM_PERF.DROP_EXTENDED_STATS
- SEM_PERF.EXPORT_NETWORK_STATS
- SEM_PERF.GATHER_STATS
- SEM_PERF.IMPORT_NETWORK_STATS
親トピック: リファレンスおよび補足情報
13.1 SEM_PERF.DELETE_NETWORK_STATS
書式
SEM_PERF.DELETE_NETWORK_STATS ( cascade_parts IN BOOLEAN DEFAULT TRUE, cascade_columns IN BOOLEAN DEFAULT TRUE, cascade_indexes IN BOOLEAN DEFAULT TRUE, no_invalidate IN BOOLEAN DEFAULT DBMS_STATS.AUTO_INVALIDATE, force IN BOOLEAN DEFAULT FALSE, options IN VARCHAR2 DEFAULT NULL);
説明
セマンティク・ネットワークの統計を削除します。
パラメータ
- options
-
次のように操作の範囲を制御します。
-
MDSYS.SDO_RDF.VALUE_TABLE_ONLY
の場合、操作はMDSYS.RDF_VALUE$表にのみ適用されます。 -
MDSYS.SDO_RDF.LINK_TABLE_ONLY
の場合、操作はMDSYS.RDF_LINK$表にのみ適用されます。 -
NULLである場合(デフォルト)、操作はMDSYS.RDF_VALUE$およびMDSYS.RDF_LINK$表の両方に適用されます。
-
- (その他のパラメータ)
-
DBMS_STATS.DELETE_TABLE_STATSプロシージャのパラメータに関する詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。なお、ここでの
force
はネットワーク統計に適用されます。
使用上のノート
DBMS_STATSパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
「セマンティク・モデルおよびセマンティク・ネットワークの統計の管理」を参照してください。
例
次の例では、セマンティク・ネットワークの統計を削除します。
EXECUTE SEM_APIS.DELETE_NETWORK_STATS;
親トピック: SEM_PERFパッケージのサブプログラム
13.2 SEM_PERF.DROP_EXTENDED_STATS
書式
SEM_PERF.DROP_EXTENDED_STATS ();
説明
MDSYS.RDF_LINK$表で、拡張オプティマイザ統計に使用される列グループを削除します。
パラメータ
(ありません。)
使用上のノート
このプロシージャを使用するには、実行権限を持つユーザーとして接続する必要があります。デフォルトでは、Spatial and GraphがOracle Databaseの一部としてインストールされている場合、このプロシージャを実行できるのはMDSYSユーザーのみです。ただし、このプロシージャの実行権限は、必要に応じて各ユーザーに付与できます。
MDSYS.RDF_LINK$から削除されるデフォルトの列グループは、(CANON_END_NODE_ID, START_NODE_ID) (P_VALUE_ID, CANON_END_NODE_ID) (P_VALUE_ID, START_NODE_ID)
です
関連項目:
-
DBMS_STATSパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください
例
次の例では、セマンティク・ネットワークの拡張統計を削除します。
EXECUTE SEM_PERF.DROP_EXTENDED_STATS;
親トピック: SEM_PERFパッケージのサブプログラム
13.3 SEM_PERF.EXPORT_NETWORK_STATS
書式
SEM_PERF.EXPORT_NETWORK_STATS ( stattab IN VARCHAR2, statid IN VARCHAR2 DEFAULT NULL, cascade IN BOOLEAN DEFAULT TRUE, statown IN VARCHAR2 DEFAULT NULL, stat_category IN VARCHAR2 DEFAULT 'OBJECT_STATS', options IN VARCHAR2 DEFAULT NULL);
説明
セマンティク・ネットワークの統計をエクスポートして、ユーザー統計表に格納します。
パラメータ
- options
-
次のように操作の範囲を制御します。
-
MDSYS.SDO_RDF.VALUE_TABLE_ONLY
の場合、操作はMDSYS.RDF_VALUE$表にのみ適用されます。 -
MDSYS.SDO_RDF.LINK_TABLE_ONLY
の場合、操作はMDSYS.RDF_LINK$表にのみ適用されます。 -
NULLである場合(デフォルト)、操作はMDSYS.RDF_VALUE$およびMDSYS.RDF_LINK$表の両方に適用されます。
-
- (その他のパラメータ)
-
DBMS_STATS.EXPORT_TABLE_STATSプロシージャのパラメータの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
使用上のノート
DBMS_STATSパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
「セマンティク・モデルおよびセマンティク・ネットワークの統計の管理」を参照してください。
例
次の例では、セマンティク・ネットワークの統計をエクスポートして、表STAT_TABLE
に格納します。
EXECUTE SEM_APIS.EXPORT_NETWORK_STATS('stat_table');
親トピック: SEM_PERFパッケージのサブプログラム
13.4 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);
説明
RDFおよびOWL表とその索引に関する統計を収集します。
パラメータ
- just_on_values_table
-
TRUE
は、トリプルの字句の値を含む表のみに関する統計を収集し、FALSE
(デフォルト)は、RDFおよびOWLデータの記憶域に関連したすべての主要な表に関する統計を収集します。TRUE
の値はプロシージャの実行時間を短縮するため、値表に関する統計のみを収集する必要がある場合(たとえば、必要な他の統計を収集するために他のインタフェースを使用する場合)では、十分である可能性があります。 - degree
-
並列度。パラレル実行の詳細は、『Oracle Database VLDBおよびパーティショニング・ガイド』を参照してください。
- estimate_percent
-
サンプリングするMDSYS.RDF_LINK$およびMDSYS.RDF_VALUE$の行のパーセントが決定されます。
有効範囲は0.000001から100です。定数
DBMS_STATS.AUTO_SAMPLE_SIZE
(デフォルト)を使用すると、最適な統計を生成するための適切なサンプル・サイズをOracle Databaseで決定できるようになります。 - value_method_opt
-
MDSYS.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
-
MDSYS.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,254]である必要があります。 -
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)
です -
使用上のノート
このプロシージャを使用するには、実行権限を持つユーザーとして接続する必要があります。デフォルトでは、Spatial and GraphがOracle Databaseの一部としてインストールされている場合、このプロシージャを実行できるのはMDSYSユーザーのみです。ただし、このプロシージャの実行権限は、必要に応じて各ユーザーに付与できます。
このプロシージャは、推論パフォーマンスの向上に有効な統計情報を収集します(「推論パフォーマンスの向上」を参照)。このプロシージャは、内部的にDBMS_STATS.GATHER_TABLE_STATSプロシージャをコールしてRDFおよびOWL関連の表とその索引に関する統計を収集し、その統計をOracle Databaseのデータ・ディクショナリに格納します。DBMS_STATSパッケージの使用方法の詳細は、『Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス』を参照してください。
統計の収集ではシステム・リソースが大量に使用されるため、このプロシージャは重要なアプリケーションおよび操作が悪影響を受ける可能性のない時期に実行してください。
「セマンティク・モデルおよびセマンティク・ネットワークの統計の管理」を参照してください。
例
次の例では、RDFおよびOWL関連の表とその索引に関する統計を収集します。
EXECUTE SEM_PERF.GATHER_STATS;
親トピック: SEM_PERFパッケージのサブプログラム
13.5 SEM_PERF.IMPORT_NETWORK_STATS
書式
SEM_PERF.IMPORT_NETWORK_STATS ( stattab IN VARCHAR2, statid IN VARCHAR2 DEFAULT NULL, cascade IN BOOLEAN DEFAULT TRUE, statown IN VARCHAR2 DEFAULT NULL, no_invalidate IN BOOLEAN DEFAULT FALSE, force IN BOOLEAN DEFAULT FALSE, stat_category IN VARCHAR2 DEFAULT 'OBJECT_STATS', options IN VARCHAR2 DEFAULT NULL);
説明
ユーザー統計表からセマンティク・ネットワークの統計を取得して、ディクショナリに格納します。
パラメータ
- options
-
次のように操作の範囲を制御します。
-
MDSYS.SDO_RDF.VALUE_TABLE_ONLY
の場合、操作はMDSYS.RDF_VALUE$表にのみ適用されます。 -
MDSYS.SDO_RDF.LINK_TABLE_ONLY
の場合、操作はMDSYS.RDF_LINK$表にのみ適用されます。 -
NULLである場合(デフォルト)、操作はMDSYS.RDF_VALUE$およびMDSYS.RDF_LINK$表の両方に適用されます。
-
- (その他のパラメータ)
-
DBMS_STATS.IMPORT_TABLE_STATSプロシージャのパラメータに関する詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。なお、ここでの
force
はネットワーク統計に適用されます。
使用上のノート
DBMS_STATSパッケージの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください。
「セマンティク・モデルおよびセマンティク・ネットワークの統計の管理」を参照してください。
例
次の例では、表STAT_TABLE
のセマンティク・ネットワークの統計をインポートして、ディクショナリに格納します。
EXECUTE SEM_APIS.IMPORT_NETWORK_STATS('stat_table');
親トピック: SEM_PERFパッケージのサブプログラム