収集設定では以下のことが行なえます。
- 経過時間、または、前回の収集以降に変化したデータ セットの割合に基づいて、統計の収集のしきい値を設定します。これによって、統計を過剰に収集するのを防ぎます。
- すべてのテーブル行ではなく、テーブル行のサブセットの代表的なサンプルに基づいて、ヒストグラムを生成するサンプリング方法を設定します。これにより、収集時間を節約できます。サンプリングは、テーブルの数が非常に多く、一意でないデータが大量に含まれている場合に統計を収集するのに効果的な方法です。また、ヒストグラムの最大間隔および最大値の長さを設定することができます。
- ヒストグラム間隔の最大数と、ヒストグラム値の最大サイズを設定します。
最大間隔を設定する場合、数値を大きくすれば、それだけヒストグラム内の統計データの粒度が最適化されます。粒度をより細かくすることで、非均一データに対して、単一テーブルおよび結合の選択性の見積もりが向上します。ただし、間隔の数が増え、ヒストグラムのサイズが大きくなるほど、クエリーの最適化時間が長くなります。
値の最大長を設定する場合、最大値のサイズを大きくすると、Teradata Databaseは指定の最大値に到達するまで値を保持します。これによって、スキューされた列に対する単一テーブルおよび結合の選択性の見積もりが向上します。ただし、最大値のサイズを大きくすると、ヒストグラムのサイズも大きくなり、クエリーの最適化時間が長くなります。重要なメリットと制限事項については、<Teradata® Database SQLデータ定義言語 - 詳細トピック>を参照してください。
以下に設定について説明します。
設定 | 説明 |
---|---|
システム定義 | Teradata Databaseでしきい値、サンプリング方法、およびヒストグラムの間隔と長さを設定する場合に使用します。 |
ユーザー定義 | これらの設定を指定したい場合に使用します。 |
なし | しきい値もサンプリング方法も設定しない場合に使用します。 |
収集設定を変更するには2つの方法があります。単一の統計を編集するか、複数の統計を編集することができます。単一の統計を編集する場合、すべての設定を完全に制御することができます。複数の統計を編集する場合、変更できる設定はシステム定義およびなしに制限されます。ただし、すべてのデータベース、単一データベース上のオブジェクト、または単一オブジェクトの収集設定を編集することができます。