File: sys_stat_analyze.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (97 lines) | stat: -rw-r--r-- 4,279 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 -  
 -  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 -  project.
 -  
 -  Copyright (C) 1998-2018 OpenLink Software
 -  
 -  This project is free software; you can redistribute it and/or modify it
 -  under the terms of the GNU General Public License as published by the
 -  Free Software Foundation; only version 2 of the License, dated June 1991.
 -  
 -  This program is distributed in the hope that it will be useful, but
 -  WITHOUT ANY WARRANTY; without even the implied warranty of
 -  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 -  General Public License for more details.
 -  
 -  You should have received a copy of the GNU General Public License along
 -  with this program; if not, write to the Free Software Foundation, Inc.,
 -  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 -  
 -  
-->
<refentry id="fn_sys_stat_analyze">
  <refmeta>
    <refentrytitle>sys_stat_analyze</refentrytitle>
    <refmiscinfo>sql</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>sys_stat_analyze</refname>
    <refpurpose>Collects statistics on a table and its columns for use in SQL optimization</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_sys_stat_analyze">
      <funcprototype id="fproto_sys_stat_analyze">
        <funcdef><function>sys_stat_analyze</function></funcdef>
        <paramdef>in <parameter>table_name</parameter> varchar</paramdef>
        <paramdef><optional>in <parameter>pcnt</parameter> integer</optional></paramdef>
        <paramdef><optional>in <parameter>ignore_vdb</parameter> integer</optional></paramdef>
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc"><title>Description</title>
<para>
Collects (or updates) column statistics for the table columns.
It collects minimum, maximum average and distinct values for a column and a 
row count for the table and inserts the data into the DB.DBA.SYS_COL_STAT table.  
It does not make histograms for the columns.</para>
	<para>
The statistics are then used by the Optimized SQL compiler. All the cached compilations are
discarded, because some of them may compile differently in the light of the new data.
</para>
  <para>This function will normally consider the entire database with the exception 
  of remote tables.  Since you may be concerned about time or remote tables this 
  operation is configurable using the optional parameters, 
  <parameter>pcnt</parameter> and <parameter>ignore_vdb</parameter>.</para>
  </refsect1>
  <refsect1 id="params"><title>Parameters</title>
    <refsect2><title>table_name</title>
      <para>The full name of the table exactly as in the KEY_TABLE column of SYS_KEYS.</para></refsect2>
    <refsect2><title>pcnt</title>
      <para>Determines the sample size for statistics gathering.  
	  A value of 0 will read the whole  table.  The default is 5, for an approximately five percentsample of the table.
</para></refsect2>
    <refsect2><title>ignore_vdb</title>
      <para>Determines whether remote tables are considered.  By default 
	  remote tables (ignore_vdb = 1) are ignored.  Setting this value to 0 
	  will cause this function to gather statistical information for remote 
	  tables also.  A percentage of 0 will read the remote table from beginning to end.  A non-zero percentage will access the statistics tables of the remote DBMS if it is of a supported type, see the sys_stat_vdb_mappers table. </para></refsect2>
 </refsect1>
	
 <!--
  <refsect1 id="errors"><title>Errors</title>
    <table><title>Errors signalled by sys_stat_analyze</title>
      <tgroup cols="4">
      <thead>
	  <row><entry>SQL State</entry><entry>Error Code</entry><entry>Error Text</entry><entry>Description</entry></row>
     </thead>
	<tbody>
	  <row>
	    <entry><errorcode></errorcode></entry>
	    <entry><errorcode></errorcode></entry>
	    <entry><errorname></errorname></entry>
	    <entry></entry>
	  </row>
	</tbody>
      </tgroup>
    </table>
  </refsect1>
  -->
  <refsect1 id="seealso"><title>See Also</title>
    <para><link linkend="fn_sys_stat_histogram">sys_stat_histogram</link></para>
    <para><link linkend="fn_SYS_DB_STAT">SYS_DB_STAT()</link></para>
  </refsect1>
</refentry>