COLLECT DEMOGRAPHICS - Teradata Database

SQL Data Manipulation Language

Product
Teradata Database
Release Number
15.00
Language
English (United States)
Last Update
2018-09-28
dita:id
B035-1146
lifecycle
previous
Product Category
Teradata® Database

COLLECT DEMOGRAPHICS

Purpose  

Collects various table demographic estimates and writes the data to the DataDemographics table of a user‑defined QCD database for subsequent analysis by the Teradata Index Wizard.

Syntax  

where:

 

Syntax element …

Specifies …

database_name

user_name

the containing database or user for table_name if something different from the current database or user.

table_name

the names of tables for which data demographic estimates are to be collected.

QCD_name

the name of the QCD database into which the collected data demographic estimates are to be written.

ALL

to collect both primary and index subtable data demographic estimates.

This is the default.

WITH NO INDEX

to exclude index subtable data demographic estimates from the collection and collect only primary data estimates.

ANSI Compliance

COLLECT DEMOGRAPHICS is a Teradata extension to the ANSI SQL:2011 standard.

Required Privileges

You must have all of the following privileges to perform COLLECT DEMOGRAPHICS:

  • DELETE on the DataDemographics table in QCD_name.
  • INSERT on the DataDemographics table in QCD_name or INSERT on the QCD_name database.
  • SELECT on the specified tables or containing databases or users.
  • Invocation

    Normally invoked using the Teradata Index Wizard utility or the Visual Explain tool.

    Demographics Collected

    COLLECT DEMOGRAPHICS determines and writes the following information for each specified table on an AMP-wise basis into the DataDemographics table of the specified query capture database. One row of information is collected in the appropriate DataDemographics subtable of the specified QCD for each AMP that is online at the time the request is performed.

  • Subtable type
  • Subtable ID
  • Estimated cardinality
  • Estimated average row length
  • Various system‑related information
  • COLLECT DEMOGRAPHICS does not capture information for the QCD table TableStatistics. TableStatistics is used only during the collection of statistics invoked by performing an INSERT EXPLAIN … WITH STATISTICS or COLLECT STATISTICS (QCD Form) request.

    For more detailed information, see SQL Request and Transaction Processing.

    Relationship to INSERT EXPLAIN WITH STATISTICS AND DEMOGRAPHICS

    The information retrieved for COLLECT DEMOGRAPHICS and INSERT EXPLAIN WITH STATISTICS AND DEMOGRAPHICS is identical. The principal differences are:

  • INSERT EXPLAIN WITH STATISTICS AND DEMOGRAPHICS uses an SQL query to collect the information, while COLLECT DEMOGRAPHICS obtains the information directly.
  • Demographics captured by INSERT EXPLAIN WITH STATISTICS AND DEMOGRAPHICS are automatically deleted whenever you delete the relevant query plans.
  • Demographics captured by COLLECT DEMOGRAPHICS are not deleted when you perform associated DROP actions on the subject table and must be deleted explicitly.

    COLLECT DEMOGRAPHICS Not Supported From Macros

    You cannot specify a COLLECT DEMOGRAPHICS request from a macro. If you execute a macro that contains a COLLECT DEMOGRAPHICS request, Teradata Database aborts the request and returns an error.

    Example  

    Collect demographic estimates on table_1 in database db_1 and write the results into the DataDemographics table of user-defined QCD MyQCD.

         COLLECT DEMOGRAPHICS FOR db_1.table_1 INTO MyQCD;

    Example  

    An entry already exists in the DataDemographics table for the specified table, then it is updated with the currently collected demographic estimates. The value of TimeStamp is updated to reflect the current time.

         COLLECT DEMOGRAPHICS FOR db_1.table_1 INTO MyQCD; /* Inserts data
         into DataDemographics table of MyQCD */
     
         COLLECT DEMOGRAPHICS FOR db_1.table_1 INTO MyQCD; /* Updates data
         in DataDemographics table of MyQCD */

    For More Information

    For more information about index analysis, see:

  • “COLLECT STATISTICS (QCD Form)” on page 557
  • “INITIATE INDEX ANALYSIS” on page 579
  • “INSERT EXPLAIN” on page 596
  • “RESTART INDEX ANALYSIS” on page 609
  • SQL Request and Transaction Processing
  • Teradata Index Wizard User Guide