Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - SQL の使用法 » クエリ処理 » クエリの最適化と実行 » 実行プランの解釈

 

実行プランの省略形

次に、実行プランに表示される省略形を示します。

短いテキスト・プラン 長いテキスト・プラン その他の情報
見積り済み最良プラン

オプティマイザは、特定のクエリのアクセス・プランを生成してコストを計算します。この処理の最中、現在の最良プランが、より低いコストが推定される新しい最良プランで置き換えられる場合があります。最後の最良プランが、文の実行に使用する実行プランになります。見積り済み最良プランは、現在の最良プランよりも優れたプランをオプティマイザが検出した回数を示しています。数字が小さい場合は、最良プランが列挙プロセスの早い段階で決定されたことを示しています。オプティマイザは特定の文のクエリ・ブロックごとに 1 回以上の列挙プロセスを起動するため、見積り済み最良プランは累積回数を表します。オプティマイザの仕組みを参照してください。

見積り済みプラン

オプティマイザによって生成される多数のプランが、それまでに検出された最良プランと比較してコストが高いと判断されます。見積り済みプランは、指定された文の列挙プロセスの最中にオプティマイザが検討した一部のプランまたは完全なプランの数を表します。

DELETE 削除 削除操作のルート・ノード。DELETE 文を参照してください。
DistH HashDistinct

HashDistinct アルゴリズム (DistH)を参照してください。

DistO OrderedDistinct

OrderedDistinct アルゴリズム (DistO)を参照してください。

DP DecodePostings

DecodePostings (DP)を参照してください。

DT DerivedTable

DerivedTable アルゴリズム (DT)を参照してください。

EAH HashExceptAll

Except アルゴリズム (EAH、EAM、EH、EM)を参照してください。

EAM MergeExceptAll

Except アルゴリズム (EAH、EAM、EH、EM)を参照してください。

EH HashExcept

Except アルゴリズム (EAH、EAM、EH、EM)を参照してください。

EM MergeAccept

Except アルゴリズム (EAH、EAM、EH、EM)を参照してください。

Exchange Exchange

交換アルゴリズム (Exchange)を参照してください。

フィルタ フィルタ

フィルタ・アルゴリズム (Filter、PreFilter)を参照してください。

GrByH HashGroupBy

HashGroupBy アルゴリズム (GrByH)を参照してください。

GrByHClust HashGroupByClustered

ClusteredHashGroupBy アルゴリズム (GrByHClust)を参照してください。

GrByHSets HashGroupBySets

HashGroupBySets アルゴリズム (GrByHSets)を参照してください。

GrByO OrderedGroupBy

OrderedGroupBy アルゴリズム (GrByO)を参照してください。

GrByOSets OrderedGroupBySets

OrderedGroupBySets アルゴリズム (GrByOSets)を参照してください。

GrByS SingleRowGroupBy

SingleRowGroupBy アルゴリズム (GrByS)を参照してください。

GrBySSets SortedGroupBySets

SortedGroupBySets アルゴリズム (GrBySSets)を参照してください。

HF HashFilter

ハッシュ・フィルタ・アルゴリズム (HF、HFP)を参照してください。

HFP ParallelHashFilter

ハッシュ・フィルタ・アルゴリズム (HF、HFP)を参照してください。

HTS HashTableScan

HashTableScan 方式 (HTS)を参照してください。

IAH HashIntersectAll

Intersect アルゴリズム (IH、IM、IAH、IAM)を参照してください。

IAM MergeIntersectAll

Intersect アルゴリズム (IH、IM、IAH、IAM)を参照してください。

IH HashIntersect

Intersect アルゴリズム (IH、IM、IAH、IAM)を参照してください。

IM MergeIntersect

Intersect アルゴリズム (IH、IM、IAH、IAM)を参照してください。

IN InList

InList アルゴリズム (IN)を参照してください。

table-name<index-name>

IndexScan、ParallelIndexScan

グラフィカルなプランで、インデックス・スキャンの場合は台形の中にインデックス名が表示されます。IndexScan メソッドを参照してください。

INSENSITIVE 大文字小文字の区別

Intersect アルゴリズム (IH、IM、IAH、IAM)を参照してください。

INSERT 挿入

挿入操作のルート・ノード。INSERT 文を参照してください。

IO IndexOnlyScan、ParallelIndexOnlyScan

IndexOnlyScan 方式 (IO)ParallelIndexScan 方式を参照してください。

JH HashJoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHS HashSemijoin

HashSemijoin アルゴリズム (JHS)を参照してください。

JHSP ParallelHashSemijoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHFO Full Outer HashJoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHA HashAntisemijoin

HashAntisemijoin アルゴリズム (JHA)を参照してください。

JHAP ParallelHashAntisemijoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHO Left Outer HashJoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHP ParallelHashJoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHPO ParallelLeftOuterHashJoin

HashJoin アルゴリズム (JH、JHSP、JHFO、JHAP、JHO、JHPO)を参照してください。

JHR RecursiveHashJoin

RecursiveHashJoin アルゴリズム (JHR)を参照してください。

JHRO RecursiveLeftOuterHashJoin

RecursiveLeftOuterHashJoin アルゴリズム (JHRO)を参照してください。

JM MergeJoin

MergeJoin アルゴリズム (JM、JMFO、JMO)を参照してください。

JMFO Full Outer MergeJoin

MergeJoin アルゴリズム (JM、JMFO、JMO)を参照してください。

JMO Left Outer MergeJoin

MergeJoin アルゴリズム (JM、JMFO、JMO)を参照してください。

JNL NestedLoopsJoin

NestedLoopsJoin アルゴリズム (JNL、JNLFO、JNLO)を参照してください。

JNLA NestedLoopsAntisemijoin

NestedLoopsAntisemijoin アルゴリズム (JNLA)を参照してください。

JNLFO Full Outer NestedLoopsJoin

NestedLoopsJoin アルゴリズム (JNL、JNLFO、JNLO)を参照してください。

JNLO Left Outer NestedLoopsJoin

NestedLoopsJoin アルゴリズム (JNL、JNLFO、JNLO)を参照してください。

JNLS NestedLoopsSemijoin

NestedLoopsSemijoin アルゴリズム (JNLS)を参照してください。

KEYSET キーセット

キーセット駆動型カーソルを指定します。SQL Anywhere のカーソルを参照してください。

LOAD ロード

ロード操作のルート・ノード。LOAD TABLE 文を参照してください。

MultiIdx MultipleIndexScan

MultipleIndexScan 方式 (MultIdx)を参照してください。

OpenString OpenString

OpenString アルゴリズム (OpenString)を参照してください。

最適化時間

オプティマイザが指定された文の列挙プロセスに費やした合計時間。

PC ProcCall

プロシージャ・コール (テーブル関数)。ProcCall アルゴリズム (PC)を参照してください。

PreFilter PreFilter

フィルタ・アルゴリズム (Filter、PreFilter)を参照してください。

RL RowLimit

RowLimit アルゴリズム (RL)を参照してください。

ROWID RowIdScan

グラフィカルなプランで、ロー ID スキャンの場合は長方形の中にテーブル名が表示されます。RowIdScan 方式 (ROWID)を参照してください。

ROWS RowConstructor

RowConstructor アルゴリズム (ROWS)を参照してください。

RR RowReplicate

RowReplicate アルゴリズム (RR)を参照してください。

RT RecursiveTable

RecursiveTable アルゴリズム (RT)を参照してください。

RU RecursiveUnion

RecursiveUnion アルゴリズム (RU)を参照してください。

SELECT 選択

選択操作のルート・ノード。SELECT 文を参照してください。

seq TableScan、ParallelTableScan

グラフィカルなプランで、テーブル・スキャンの場合は長方形の中にテーブル名が表示されます。TableScan 方式 (seq)ParallelTableScan 方式を参照してください。

Sort Sort

インデックス・ソートまたはマージ・ソート。ソート・アルゴリズム (Sort)を参照してください。

SrtN SortTopN

SortTopN アルゴリズム (SrtN)を参照してください。

TermBreak TermBreak

全文検索の単語の区切りアルゴリズム。テキスト・インデックスの変更を参照してください。

UA UnionAll

UnionAll アルゴリズム (UA)を参照してください。

UPDATE Update

更新操作のルート・ノード。UPDATE 文を参照してください。

Window Window

Window アルゴリズム (Window)を参照してください。

Work ワーク・テーブル

中間結果を表す内部ノード。

プランに使用される一般的な統計

次の統計は実際の測定値です。

統計情報 説明
Invocations ローがサブツリーから要求された回数。
RowsReturned 現在のノードについて返されたローの数。
RunTime 子の時間を含めたサブツリーの実行所要時間。
CacheHits 成功したキャッシュ読み込み数。
CacheRead キャッシュの中で検索されたデータベース・ページの数。
CacheReadTable キャッシュから読み込まれたテーブル・ページの数。
CacheReadIndLeaf キャッシュから読み込まれたインデックス・リーフ・ページの数。
CacheReadIndInt キャッシュから読み込まれたインデックス内部ノード・ページの数。
DiskRead ディスクから読み込まれたページ数。
DiskReadTable ディスクから読み込まれたテーブル・ページの数。
DiskReadIndLeaf ディスクから読み込まれたインデックス・リーフ・ページの数。
DiskReadIndInt ディスクから読み込まれたインデックス内部ノード・ページの数。
DiskWrite ディスクに書き込まれたページ (ワーク・テーブル・ページまたは修正されたテーブル・ページ) の数。
IndAdd インデックスに追加されたエントリの数。
IndLookup インデックスの中で検索されたエントリの数。
FullCompare インデックスのハッシュ値を超えて実行された比較の回数。
プランに使用される一般的な推定
統計情報 説明
EstRowCount 呼び出されるたびにノードが返すローの推定数。
AvgRowCount 各呼び出しで返される平均ロー数。これは推定値ではなく、RowsReturned / Invocations として計算されます。この値が EstRowCount とまったく異なる場合は、選択性推定が不十分な場合があります。
EstRunTime 推定実行所要時間 (EstDiskReadTime、EstDiskWriteTime、EstCpuTime の合計)。
AvgRunTime 平均実行所要時間 (測定値)。
EstDiskReads ディスクからの読み込み操作の推定回数。
AvgDiskReads ディスクからの読み込み操作の平均回数 (測定値)。
EstDiskWrites ディスクへの書き込み操作の推定回数。
AvgDiskWrites ディスクへの書き込み操作の平均回数 (測定値)。
EstDiskReadTime ディスクからローを読み込むときの推定所要時間。
EstDiskWriteTime ディスクにローを書き込むときの推定所要時間。
EstCpuTime プロセッサの推定実行所要時間。
SELECT、INSERT、UPDATE、DELETE に関連するプランの項目
項目 説明
Optimization Goal クエリ処理の最適化の対象を、最初のローを迅速に返すこと、または完全な結果セットを返すコストを最小限に抑えることのどちらかに指定します。optimization_goal オプション [データベース]を参照してください。
Optimization workload クエリ処理において、更新と読み込みを組み合わせた負荷に対して最適化するか、または大部分が読み込みベースの負荷に対して最適化するかを決定します。optimization_workload オプション [データベース]を参照してください。
ANSI update constraints 更新が許される範囲を制御します (オプションは、Off、Cursors、Strict)。ansi_update_constraints オプション [互換性]を参照してください。
Optimization level 予約。
Select list クエリによって選択される式のリスト。
Materialized views

オプティマイザによって検討されるマテリアライズド・ビューのリスト。リスト内の各エントリは view-name [ view-matching-outcome ] [ table-list ] という形式の組です。ここで view-matching-outcome はマテリアライズド・ビューの使用法を示します。この値が COSTED の場合、ビューは列挙時に使用されています。table-list は、このビューで置き換えられる可能性のあったクエリ・テーブルのリストです。

view-matching-outcome の値は、次のとおりです。

  • ベース・テーブルが一致しません
  • パーミッションが一致しません
  • 述部が一致しません
  • Select リストが一致しません
  • 見積り済みです
  • 失効が一致しません
  • スナップショットの失効が一致しません
  • オプティマイザでは使用できません
  • オプティマイザでは内部で使用できません
  • 定義を構築できません
  • アクセスできません
  • 無効になっています
  • オプションが一致しません
  • しきい値に一致するビューに到達しました
  • ビューは使用されています

オプティマイザによるマテリアライズド・ビューの使用を妨げる制約と条件の詳細については、マテリアライズド・ビューによるパフォーマンスの向上マテリアライズド・ビューの制限を参照してください。

ロックに関連するプランの項目
項目 説明
Locked tables すべてのロック・テーブルとその独立性レベルのリスト。
スキャンに関連するプランの項目
項目 説明
Table name テーブルの実際の名前。
Correlation name テーブルのエイリアス。
Estimated rows テーブルの推定ロー数。
Estimated pages テーブルの推定ページ数。
Estimated row size テーブルの推定ロー・サイズ。
Page maps 複数ページの読み込みにページ・マップが使用される場合は YES。
インデックス・スキャンに関連するプランの項目
項目 説明
Selectivity 範囲バウンドと一致する推定ロー数。
Index name インデックスの名前。
Key type PRIMARY KEY、FOREIGN KEY、CONSTRAINT (一意性制約)、UNIQUE (ユニーク・インデックス) のいずれか。インデックスがユニークでないセカンダリ・インデックスの場合、キー・タイプは表示されません。
Depth インデックスの高さ。テーブルとページのサイズを参照してください。
Estimated leaf pages リーフ・ページの推定数。
Sequential Transitions インデックスがどれだけクラスタ化されているかを示す、各物理インデックスの統計情報。
Random Transitions インデックスがどれだけクラスタ化されているかを示す、各物理インデックスの統計情報。
Key Values インデックス内のユニークなエントリの数。
Cardinality 推定ロー数と異なる場合の、インデックスのカーディナリティ。バージョン 6.0.0 以前の SQL Anywhere データベースにのみ適用されます。
Direction FORWARD または BACKWARD。
Range bounds 範囲バウンドは、リスト (col_name=value) または col_name IN [low, high] として表示されます。
Primary Key Table 外部キー・インデックス・スキャンのプライマリ・キー・テーブル名。
Primary Key Table Estimated Rows 外部キー・インデックス・スキャンのプライマリ・キー・テーブル内のロー数。
Primary Key Column 外部キー・インデックス・スキャンのプライマリ・キー・カラム名。
ジョイン、フィルタ、事前フィルタに関連するプランの項目
項目 説明
Predicate このノードで評価される探索条件、選択性推定、測定値。グラフィカル・プラン内の選択性の表示を参照してください。
ハッシュ・フィルタに関連するプランの項目
項目 説明
Build values 入力内の重複しない値の推定数。
Probe values 述部をチェックする場合の、入力内の重複しない値の推定数。
Bits ハッシュ・マップを構築するために選択されたビット数。
Pages ハッシュ・マップを格納するために必要なページ数。
UNION に関連するプランの項目
項目 説明
Union List UNION 文が対象とするカラム。
GROUP BY に関連するプランの項目
項目 説明
Aggregates すべての集合関数。
Group-by list GROUP BY 句に指定されているすべてのカラム。
DISTINCT に関連するプランの項目
項目 説明
Distinct list DISTINCT 句に指定されているすべてのカラム。
IN リストに関連するプランの項目
項目 説明
In List 指定したセットのすべての式。
Expression SQL リストと比較される式。
SORT に関連するプランの項目
項目 説明
Order-by ソート基準となるすべての式のリスト。
ロー制限に関連するプランの項目
項目 説明
Row limit count FIRST または TOP n で指定された、返されるローの最大数。