Teradata Databaseがテーブルに関する完全統計を収集する場合は(PARTITION統計だけを収集する場合を除く)、常に全テーブル スキャン(インデックスに関する統計を収集する場合はインデックスのスキャン)が実行されるため、この処理が完了するのに長い時間がかかる可能性があります。サンプリングによる統計の収集コストの削減を参照してください。例外は、システム派生列PARTITIONで統計を収集する場合であり、それは常に高速の処理です。スキャンに要する時間は、テーブルのサイズ、パーティション数、システム構成、システムのワークロードに応じて異なります。
間隔ヒストグラムの作成や、列セットやインデックスの特性のサマリーに使用されるさまざまな統計計算により、余分のリソースが消費されます。間隔ヒストグラムの定義については、<Teradata Vantage™- SQLリクエストおよびトランザクション処理、B035-1142>を参照してください。
インデックスが付けられていない列や固有インデックスである列は、非固有セカンダリ インデックスの列に比べて、処理により多くの時間を要します。
統計の収集と再収集にかかる時間の長さを考えると、1つ以上のUSINGオプション(特に再収集しきい値を設定するオプション)を使用して、Teradata Databaseが統計を再収集するタイミングに関するルールを設定するのは望ましいことです。これらのオプションの詳細については、完全統計とサンプル統計の比較およびTHRESHOLDオプションを使用した統計の収集および再収集を参照してください。
THRESHOLDオプションを使用した統計の収集および再収集
新しく作成された空のテーブルに関する統計を常に収集する必要があります。これによって、後続の統計およびデモグラフィックの収集のためのパーティション テーブルの列、インデックス、パーティションおよび概要データ構造体が定義されます。概要データ構造体の定義については、<Teradata Vantage™- SQLリクエストおよびトランザクション処理、B035-1142>を参照してください。
統計の再収集も、新規に作成したテーブルにデータが入れられた直後とそれ以降、必要に応じて行なわなければなりません。
HELP STATISTICSリクエストを空のテーブルに対して実行すると、固有値列が値として0を返します。