IndexRecommendationsの機能
INITIATE INDEX ANALYSISによって生成されたインデックスの推奨事項に関する情報が含まれています。
IndexRecommendationsは、後で取得できるように、インデックス分析中に指定されたオプションを記録します。
IndexRecommendationsテーブルの定義
次のCREATE TABLEリクエストは、IndexRecommendationsテーブルを定義しています。
CREATE TABLE IndexRecommendations( WorkLoadID INTEGER NOT NULL, UserName VARCHAR128 CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL, TimeOfAnalysis TIMESTAMP(0) NOT NULL, RecommendationID INTEGER NOT NULL, QueryID INTEGER NOT NULL, IndexID INTEGER, IndexNameTag VARCHAR128 CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL, TableName VARCHAR128 CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL, DatabaseName VARCHAR128 CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL, TableID BYTE(6) NOT NULL, IndexType INTEGER, IndexTypeText VARCHAR(30) CHARACTER SET LATIN NOT CASESPECIFIC, StatisticsInfo VARBYTE(16383), OriginalCost FLOAT, NewCost FLOAT, SpaceEstimate FLOAT, TimeEstimate FLOAT, DropFlag CHARACTER(1)CHARACTER SET LATIN NOT CASESPECIFIC, IndexDDL VARCHAR(10000) CHARACTER SET UNICODE NOT CASESPECIFIC, StatsDDL VARCHAR(10000) CHARACTER SET UNICODE NOT CASESPECIFIC, Remarks VARCHAR(1024) CHARACTER SET UNICODE NOT CASESPECIFIC, AnalysisData VARCHAR(2048) CHARACTER SET LATIN NOT CASESPECIFIC, IndexesPerTable SMALLINT DEFAULT NULL, SearchSpaceSize SMALLINT, ChangeRateThreshold BYTEINT, ColumnPerIndex SMALLINT, ColumnsPerJoinIndex SMALLINT DEFAULT NULL, IndexMaintMode BYTEINT DEFAULT NULL, JINumber INTEGER DEFAULT NULL, JITableName VARCHAR128 CHARACTER SET UNICODE NOT CASESPECIFIC DEFAULT NULL, TimeLimitExceeded CHAR(1) CHARACTER SET LATIN NOT CASESPECIFIC) TimeLimit INTEGER PRIMARY INDEX (WorkloadID);
IndexRecommendationsの属性の定義
次のテーブルは、IndexRecommendationsテーブル属性を定義しています。
属性 | 定義 |
---|---|
WorkloadID |
|
UserName | インデックス分析を実行するユーザーの名前。 |
TimeOfAnalysis | インデックスの推奨事項が分析された際のタイムスタンプ。 システムに適用する前に、この列をTableNameの変更されたタイムスタンプと比較することによって推奨事項の正確さを検証できます。 |
RecommendationID | インデックスの推奨事項を固有に識別する。 |
QueryID | 現在のエントリがインデックスの推奨事項の1つとなっているワークロードのQueryIDを固有に識別する。 |
IndexID | テーブルの固有セカンダリ インデックスを一意に識別します。 IndexTypeの値が5または6 (結合インデックスを示す)のときは、非適用を意味するnullが設定されます。 |
IndexNameTag | INITIATE INDEX ANALYSIS文で指定したインデックスの推奨事項の名前(<Teradata Vantage™ - SQLデータ操作言語、B035-1146>を参照)。 |
TableName | 行がインデックスの推奨事項を定義する対象となるテーブルの名前。 |
DatabaseName | TableNameを含むデータベースの名前。 |
TableID | TableNameの固有の内部識別子。 |
IndexType | 推奨されたインデックスのタイプを示す番号。 それぞれの固有インデックス タイプは、独自のIndexTypeTextに関連付けられています。
|
IndexTypeText | IndexTypeのテキストによる表現。 以下に、有効なIndexTypeText文字列およびその意味を示します。
|
StatisticsInfo | インデックスの推奨事項を作成する統計(存在する場合)。 |
OriginalCost | 推奨されたインデックスを実装する前の問合わせの見積もりコスト(ミリ秒)。 |
NewCost | 推奨されたインデックスを実装した後の問合わせの見積もりコスト(ミリ秒)。 |
SpaceEstimate | 推奨されたインデックスが作成時に占有するスペースの見積もり(バイト単位) |
TimeEstimate | 推奨されるインデックスの実装に必要な時間の見積もり(ミリ秒)。 |
DropFlag | 指定されたインデックスを追加するか、または削除するかを識別する。
|
IndexDDL | インデックス用のCREATE INDEX、DROP INDEX、CREATE JOIN INDEX、またはDROP JOIN INDEXリクエストのDDLテキスト。 |
StatsDDL | インデックスの分析に使用するCOLLECT STATISTICS (QCD形式)リクエストのDDLテキスト。 |
Remarks | インデックスの推奨事項の作成に関係する、分析の詳細を提供する。 |
AnalysisData | 将来の使用に備えて予約済み。 |
IndexesPerTable | 分析を開始するのに使用するINITIATE INDEX ANALYSIS文で指定された、特定のテーブルにおけるインデックスの数の制限。 |
SearchSpaceSize | 分析を開始するのに使用するINITIATE INDEX ANALYSIS文で指定された、特定のテーブルで検索される、候補となるインデックスの最大数。 |
ChangeRateThreshold | 分析を開始するために使用されるINITIATE INDEX ANALYSIS文で指定された、列の揮発性のしきい値。 変更率がChangeRateThresholdより小さい列は、インデックス分析の際に、候補となるインデックスとして選択されます。 |
ColumnsPerIndex | 分析を開始するために使用されるINITIATE INDEX ANALYSIS文で指定された、インデックスで許可される列の最大数。 |
ColumnsPerJoinIndex | INITIATE INDEX ANALYSIS SET boundary_option指定によって指定された、推奨される結合インデックス内の列の最大数を制御するために分析中に使用された整数値。 |
IndexMaintMode | インデックス保守コストの見積もりの使用方法を制御するために、分析中に使用された整数値。 値は、INITIATE INDEX ANALYSIS SET boundary_option指定を使用して指定されます。 |
JINumber | 指定のインデックス分析に対する推奨される結合インデックス テーブルを識別する、連番の整数値。 この列は、結合インデックス以外のインデックス タイプではnullに設定されます。 |
JITableName | 結合インデックスに対してシステムが割り当てる名前。 JINumberがnullの場合、JITableNameもnullです。 JITableNameの命名規則は以下のとおりです: JI_RecommendationID_BaseTableName_JINumber、JIはリテラル文字列、RecommendationID、BaseTableName、およびJINumberの値を使用して、行の名前付き列で使用され、必要に応じて文字形式に変換されます。 |
TimeLimitExceeded | 推奨事項が、指定されている期限が切れたINITIATE INDEX ANALYSISリクエストによって生成されたかどうかを示します。
|
TimeLimit | 分析の期間についてユーザーが指定した期限(分単位の整数値)。 |