15.20 SEM_APIS.ANALYZE_RDF_GRAPH

Format

SEM_APIS.ANALYZE_RDF_GRAPH(
     rdf_graph_name   IN VARCHAR2, 
     estimate_percent IN NUMBER DEFAULT to_estimate_percent_type (get_param('ESTIMATE_PERCENT')), 
     method_opt       IN VARCHAR2 DEFAULT get_param('METHOD_OPT'), 
     degree           IN NUMBER DEFAULT to_degree_type(get_param('DEGREE')), 
     cascade          IN BOOLEAN DEFAULT to_cascade_type(get_param('CASCADE')), 
     no_invalidate    IN BOOLEAN DEFAULT to_no_invalidate_type (get_param('NO_INVALIDATE')), 
     force            IN BOOLEAN DEFAULT FALSE),
     network_owner    IN VARCHAR2 DEFAULT NULL,
     network_name     IN VARCHAR2 DEFAULT NULL);

Description

Collects optimizer statistics for a specified RDF graph.

Parameters

rdf_graph_name

Name of the RDF graph.

estimate_percent

Percentage of rows to estimate in the internal table partition containing information about the RDF graph (NULL means compute). The valid range is [0.000001,100]. Use the constant DBMS_STATS.AUTO_SAMPLE_SIZE to have Oracle determine the appropriate sample size for good statistics. This is the usual default.

method_opt

Accepts either of the following options, or both in combination, for the internal table partition containing information about the RDF graph:

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

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

size_clause is defined as size_clause := SIZE {integer | REPEAT | AUTO | SKEWONLY}

column is defined as column := column_name | (extension)

  • - integer : Number of histogram buckets. Must be in the range [1,254].
  • - REPEAT : Collects histograms only on the columns that already have histograms.
  • - AUTO : Oracle determines the columns to collect histograms based on data distribution and the workload of the columns.
  • - SKEWONLY : Oracle determines the columns to collect histograms based on the data distribution of the columns.
  • - column_name : name of a column
  • - extension: Can be either a column group in the format of (column_name, column_name [, ...]) or an expression.

The usual default is FOR ALL COLUMNS SIZE AUTO.

degree

Degree of parallelism for the internal table partition containing information about the RDF graph. The usual default for degree is NULL, which means use the table default value specified by the DEGREE clause in the CREATE TABLE or ALTER TABLE statement. Use the constant DBMS_STATS.DEFAULT_DEGREE to specify the default value based on the initialization parameters. The AUTO_DEGREE value determines the degree of parallelism automatically. This is either 1 (serial execution) or DEFAULT_DEGREE (the system default value based on number of CPUs and initialization parameters) according to size of the object.

cascade

Gathers statistics on the indexes for the internal table partition containing information about the RDF graph. Use the constant DBMS_STATS.AUTO_CASCADE to have Oracle determine whether index statistics are to be collected or not. This is the usual default.

no_invalidate

Does not invalidate the dependent cursors if set to TRUE. The procedure invalidates the dependent cursors immediately if set to FALSE. Use DBMS_STATS.AUTO_INVALIDATE. to have Oracle decide when to invalidate dependent cursors. This is the usual default.

force

TRUE gathers statistics even if the RDF graph is locked; FALSE (the default) does not gather statistics if the graph is locked.

network_owner

Owner of the RDF network. (See Table 1-2.)

network_name

Name of the RDF network. (See Table 1-2.)

Usage Notes

Index statistics collection can be parellelized except for cluster, domain, and join indexes.

This procedure internally calls the DBMS_STATS.GATHER_TABLE_STATS procedure, which collects optimizer statistics for the internal table partition that contains information about the RDF graph. The DBMS_STATS.GATHER_TABLE_STATS procedure is documented in Oracle Database PL/SQL Packages and Types Reference.

See also Managing Statistics for Semantic Models and the Semantic Network.

For information about RDF network types and options, see RDF Networks.

Examples

The following example collects statistics for the RDF graph named family.

EXECUTE SEM_APIS.ANALYZE_RDF_GRAPH('family');