17.00 - 17.05 - TableStatistics - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLリクエストおよびトランザクション処理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
ユーザー ガイド
Publication ID
B035-1142-170K-JPN
Language
日本語 (日本)

TableStatisticsの機能

指定された問合わせでインデックスの候補となりえる列すべてのデータ サンプルの統計を獲得します。

SQL COLLECT STATISTICS (QCD形式)文を実行する場合、TableStatisticsは詳細な統計も獲得します。

TableStatisticsテーブルの定義

次のCREATE TABLEリクエストは、TableStatisticsテーブルを定義しています。

   CREATE TABLE TableStatistics (
     MachineName    VARCHAR(30) CHARACTER SET UNICODE
                    UPPERCASE NOT CASESPECIFIC NOT NULL,
     TableName      VARCHAR128 CHARACTER SET UNICODE
                    UPPERCASE NOT CASESPECIFIC NOT NULL,
     DatabaseName   VARCHAR128 CHARACTER SET UNICODE
                    UPPERCASE NOT CASESPECIFIC NOT NULL,
     IndexName      VARCHAR128 CHARACTER SET UNICODE
                    UPPERCASE NOT CASESPECIFIC,
     ColumnName     VARCHAR128 CHARACTER SET UNICODE
                    UPPERCASE NOT CASESPECIFIC NOT NULL,
     CollectedTime  TIMESTAMP(6) NOT NULL,
     SamplePercent  FLOAT NOT NULL,
     IndexType      CHARACTER(1) CHARACTER SET LATIN NOT CASESPECIFIC                     NOT NULL,
     IndexID        INTEGER,
     StatisticsInfo VARBYTE(16383),
     DataType       SMALLINT,
     DataLength     INTEGER,
     Attributes     VARCHAR(256) CHARACTER SET LATIN NOT CASESPECIFIC,
     ModifiedTime   TIMESTAMP(6),
     ModifiedStats  VARBYTE(16383),
     QueryId        INTEGER,
     FieldPosition  BYTEINT,
     StatisticsID   INTEGER)
   PRIMARY INDEX (MachineName, DatabaseName, TableName);

TableStatisticsの属性の定義

次のテーブルは、TableStatisticsテーブル属性を定義しています。

属性 定義
MachineName このテーブルが属するシステムの名前。
TableName 行によって統計が定義されるテーブルの名前。
DatabaseName TableNameを格納しているデータベースまたはユーザーの名前。
IndexName インデックスに名前が付けられている場合には、その名前。名前が付けられていない場合、IndexNameはNULLになります。
ColumnName 統計が列にある場合には、列の名前。
CollectedTime 統計が収集された時間を示すタイムスタンプ値。
SamplePercent この行に記録された統計を収集するために読み取られた行のサンプリングの比率。
IndexType この行が表わす統計がインデックスに関係あるかどうかを示すフラグ。
  • DはPARTITION列。
  • Nはインデックス付きでない列。
  • Pは疑似インデックス。
  • YはIndexIDで指定されたインデックス用。
IndexID この行で表わされる統計が関係するインデックスの固有識別子。
  • IndexTypeがNの場合、IndexIDはnull。
  • IndexTypeがPの場合、IndexIDはテーブルの既存インデックスをスキャンして最大値を増分することにより生成されたID値。
  • IndexTypeがYの場合、IndexIDはTeradata Databaseが割り当てたID値。
StatisticsInfo 列またはインデックス統計。
DataType 列のデータ型を示す。この値は、PrepInfo CLIv2パーセルのデータ型列内に返される値と同じです。
DataLength 列の最大長(バイト単位)。
Attributes nullに設定される。将来の使用のために予約済み。
ModifiedTime 統計が変更された場合、最後に変更が行なわれた際のタイムスタンプ値を示す。
ModifiedStats ユーザーが変更した列またはインデックスの統計。

INITIATE INDEX ANALYSIS文でUSE MODIFIED STATISTICSオプションを指定した場合、StatisticsInfo列の統計の代わりにこの統計が使用されます。

Teradata Index Wizardユーティリティの「what if (シュミレーション)」機能を使用して、ModifiedStatsに統計を作成します。

QueryID 問合わせの固有ID。

統計がCOLLECT STATISTICS (QCD形式)を使用して収集された場合には、nullに設定されます。

FieldPosition 複合インデックスの中での列の位置を示す(右から左へ数える)。

統計は、FieldPosition 1にのみ対応する行に記録されます。他の列の位置の値は、nullに設定されます。

StatisticsID デモグラフィックがCOLLECT STATISTICS (QCD形式)またはINSERT EXPLAIN文によって獲得された場合には、1に設定される。

デモグラフィックが直接取り込まれずにインポートされた場合には、StatisticsIDが別の値になります。