次に、実行プランに表示される省略形を示します。
プランに表示されるアルゴリズムの詳細については、ホワイトペーパー『Query Processing Based on SQL Anywhere 12.0.1 Architecture』 ( http://www.sybase.com/detail?id=1096047) を参照してください。
短いテキストプラン | 長いテキストプラン | その他の情報 |
---|---|---|
見積り済み最良プラン | オプティマイザは、特定のクエリのアクセスプランを生成してコストを計算します。この処理の最中、現在の最良プランが、より低いコストが推定される新しい最良プランで置き換えられる場合があります。最後の最良プランが、文の実行に使用する実行プランになります。見積り済み最良プランは、現在の最良プランよりも優れたプランをオプティマイザが検出した回数を示しています。数字が小さい場合は、最良プランが列挙プロセスの早い段階で決定されたことを示しています。オプティマイザは特定の文のクエリブロックごとに 1 回以上の列挙プロセスを起動するため、見積り済み最良プランは累積回数を表します。 | |
見積り済みプラン | オプティマイザによって生成される多数のプランが、それまでに検出された最良プランと比較してコストが高いと判断されます。見積り済みプランは、指定された文の列挙プロセスの最中にオプティマイザが検討した一部のプランまたは完全なプランの数を表します。 | |
** | ** | 完全なインデックススキャン。インデックススキャンではすべてのローが読み込まれます。 |
DELETE | Delete | 削除操作のルートノード。 |
DistH | HashDistinct | HashDistinct は 1 つの入力を受け取り、すべての排他ローを返します。 |
DistO | OrderedDistinct | OrderedDistinct では、各ローが読み込まれ、前のローと比較されます。両者が同じであれば後の入力ローは無視され、それ以外の場合は出力されます。 |
DP | DecodePostings | DecodePostings は、テキストインデックス内の単語の位置情報を復号化します。 |
DT | DerivedTable | DerivedTable は、特にクエリに 1 つ以上の外部ジョインが含まれる場合に、クエリ書き換え最適化などのさまざまな理由でプランに表示される場合があります。 |
EAH | HashExceptAll |
SQL の集合差異演算子 EXCEPT のハッシュベースの実装が使用されたことを示します。 |
EAM | MergeExceptAll |
SQL の集合差異演算子 EXCEPT のソートベースの実装が使用されたことを示します。 |
EH | HashExcept |
SQL の集合差異演算子 EXCEPT のハッシュベースの実装が使用されたことを示します。 |
EM | MergeExcept |
SQL の集合差異演算子 EXCEPT のソートベースの実装が使用されたことを示します。 |
Exchange | Exchange |
SELECT 文の処理時にクエリ内並列処理が使用されたことを示します。 |
Filter | Filter |
任意のタイプの述部、subselect を含む比較、EXISTS と NOT EXISTS の各サブクエリ (その他の形式の限定サブクエリ) などの探索条件の適用を示します。 |
GrByH | HashGroupBy |
HashGroupBy では、グループごとに 1 つのローで構成されるインメモリハッシュテーブルが構築されます。入力ローが読み込まれると、ワークテーブル内で関連グループが検索されます。集合関数が更新され、グループローがワークテーブルに再び書き込まれます。グループレコードが見つからなければ、新しいグループレコードが初期化され、ワークテーブルに挿入されます。 |
GrByHClust | HashGroupByClustered |
入力テーブルのグループ化カラム内の値はクラスタ化されているため、似た値が互いに近接して現れることがあります。ClusteredHashGroupBy は、このクラスタ化を利用します。 |
GrByHP | ParallelHashGroupBy |
HashGroupBy の変形。 |
GrByHSets | HashGroupBySets |
GROUPING SETS クエリを実行する場合、HashGroupBy の変形である HashGroupBySets が使用されます。 |
GrByO | OrderedGroupBy |
OrderedGroupBy では、グループ化カラムによって順序付けされた入力が読み込まれます。各ローは、読み込まれるたびに前のローと比較されます。グループ化カラムが一致すると、現在のグループが更新されます。それ以外の場合は、現在のグループが出力され、新しいグループが開始されます。 |
GrByOSets | OrderedGroupBySets |
GROUPING SETS クエリを実行する場合、OrderedGroupBy の変形である OrderedGroupBySets が使用されます。 |
GrByS | SingleRowGroupBy |
GROUP BY を指定しなければ、単一ローの集合の生成に SingleRowGroupBy が使用されます。各入力ローに対して単一のグループローがメモリに格納され、更新されます。 |
GrBySSets | SortedGroupBySets |
SortedGroupBySets は、GROUPING SETS を含む OLAP クエリを処理する場合に使用されます。 |
HF | HashFilter |
ハッシュフィルタ (ブルームフィルタ) が使用されたことを示します。 |
HFP | ParallelHashFilter |
ハッシュフィルタ (ブルームフィルタ) が使用されたことを示します。 |
HTS | HashTableScan |
ハッシュテーブルスキャンが使用されたことを示します。 |
IAH | HashIntersectAll |
SQL の集合差異演算子 INTERSECT のハッシュベースの実装が使用されたことを示します。 |
IAM | MergeIntersectAll |
SQL の集合差異演算子 INTERSECT のソートベースの実装が使用されたことを示します。 |
IH | HashIntersect |
SQL の集合差異演算子 INTERSECT のハッシュベースの実装が使用されたことを示します。 |
IM | MergeIntersect |
SQL の集合差異演算子 INTERSECT のソートベースの実装が使用されたことを示します。 |
IN | InList |
InList は、インデックスを使用して IN リスト述部を満たすことができる場合に使用されます。 |
table-name<index-name> |
IndexScan、ParallelIndexScan | グラフィカルなプランで、インデックススキャンの場合は台形の中にインデックス名が表示されます。 |
INSENSITIVE | Insensitive | |
INSERT | Insert | INSERT 操作のルートノード。 |
IO | IndexOnlyScan、ParallelIndexOnlyScan |
クエリを満たすために必要なすべてのデータを含んだインデックスをオプティマイザが使用したことを示します。 |
JH | HashJoin |
HashJoin は、2 つの入力のうち小さい方のインメモリハッシュテーブルを作成してから、大きい方の入力を読み込みます。次に、インメモリハッシュテーブルを調査して一致するローを検索します。見つかったローはワークテーブルに書き込まれます。小さい方の入力がメモリに収まらない場合は、HashJoin によって両方の入力が小さなワークテーブルに分割されます。これらの小さくなったワークテーブルは、小さい方の入力がメモリに収まるようになるまで再帰的に処理されます。 |
JHS | HashSemijoin |
HashSemijoin は、左側と右側のセミジョインを実行します。 |
JHSP | ParallelHashSemijoin |
HashJoin の変形。 |
JHFO | Full Outer HashJoin |
HashJoin の変形。 |
JHA | HashAntisemijoin |
HashAntisemijoin は、左側と右側の非セミジョインを実行します。 |
JHAP | ParallelHashAntisemijoin |
HashJoin の変形。 |
JHO | Left Outer HashJoin |
HashJoin の変形。 |
JHP | ParallelHashJoin |
HashJoin の変形。 |
JHPO | ParallelLeftOuterHashJoin |
HashJoin の変形。 |
JHR | RecursiveHashJoin |
HashJoin の変形。 |
JHRO | RecursiveLeftOuterHashJoin |
HashJoin の変形。 |
JM | MergeJoin |
MergeJoin は 2 つの入力を読み込みます。このとき、2 つの入力はどちらもジョイン属性で順序付けされています。左側の入力のローごとに、右側の入力のローにソート順にアクセスすることで、一致する右側のローをすべて読み込みます。 |
JMFO | Full Outer MergeJoin |
MergeJoin の変形。 |
JMO | Left Outer MergeJoin |
MergeJoin の変形。 |
JNL | NestedLoopsJoin |
NestedLoopsJoin では、左側のローごとに右側全体が読み込まれ、左側と右側のジョインが計算されます。 |
JNLA | NestedLoopsAntisemijoin |
NestedLoopsAntisemijoin は左側のローごとに右側をスキャンして、入力をジョインします。 |
JNLFO | Full Outer NestedLoopsJoin |
NestedLoopsJoin の変形。 |
JNLO | Left Outer NestedLoopsJoin |
NestedLoopsJoin の変形。 |
JNLS | NestedLoopsSemijoin |
NestedLoopsSemijoin は左側のローごとに右側をスキャンして、入力をジョインします。 |
KEYSET | Keyset |
キーセット駆動型カーソルを指定します。 |
LOAD | Load |
ロード操作のルートノード。 |
MultiIdx | MultipleIndexScan |
論理演算子 AND または OR で組み合わされた探索条件のセットを含むクエリを満たすために、複数のインデックスを使用できる、または使用する必要がある場合は、MultipleIndexScan を使用します。 |
OpenString | OpenString |
OpenString は、OPENSTRING 句を含む SELECT 文の FROM 句で使用されます。 |
Optimization Time | 指定された文のすべての列挙プロセスにオプティマイザが費やした合計時間。 | |
PC | ProcCall | プロシージャコール (テーブル関数)。 |
PreFilter | PreFilter |
フィルタでは、任意のタイプの述部、subselect を含む比較、EXISTS と NOT EXISTS の各サブクエリ (その他の形式の限定サブクエリ) などの探索条件が適用されます。 |
R | R | リバースインデックススキャン。インデックススキャンでローがインデックスから逆の順序で読み込まれます。 |
RL | RowLimit |
RowLimit は、入力の最初の n 個のローを返し、残りのローは無視します。ローの制限は、SELECT 文の TOP n または FIRST 句によって設定されます。 |
ROWID | RowIdScan | グラフィカルなプランで、ロー ID スキャンの場合は長方形の中にテーブル名が表示されます。 |
ROWS | RowConstructor |
RowConstructor は、他のアルゴリズムへの入力として使用できる仮想ローを作成する特殊な演算子です。 |
RR | RowReplicate |
RowReplicate は、EXCEPT ALL や INTERSECT ALL などの集合操作の実行時に使用されます。 |
RT | RecursiveTable | 再帰テーブルがクエリ内の WITH 句の結果として使用されたことを示します。WITH 句は、再帰的な UNION クエリに使用されました。 |
RU | RecursiveUnion |
RecursiveUnion は、再帰的な UNION クエリの実行中に使用されます。 |
SELECT | Select | 選択操作のルートノード。 |
seq | TableScan、ParallelTableScan | グラフィカルなプランで、テーブルスキャンの場合は長方形の中にテーブル名が表示されます。 |
Sort | Sort | インデックスソートまたはマージソート。 |
SrtN | SortTopN |
SortTopN は、TOP N 句と ORDER BY 句を含むクエリで使用されます。 |
TermBreak | TermBreak | 全文検索の TermBreaker アルゴリズム。 |
UA | UnionAll |
UnionAll では、重複に関係なく各入力からローが読み込まれ、出力されます。このアルゴリズムは、UNION 文と UNION ALL 文を実装するために使用されます。 |
UPDATE | Update | 更新操作のルートノード。 |
Window | Window |
Window は、Window 関数を使用する OLAP クエリを評価する場合に使用します。 |
Work | Work table | 中間結果を表す内部ノード。 |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |