日本語PDF

7 PLAN_TABLEのリファレンス

この章では、PLAN_TABLE列について説明します。

7.1 PLAN_TABLEの列

PLAN_TABLEは、EXPLAIN PLAN文によって移入されます。

次の表では、PLAN_TABLEの列について説明します。

表7-1 PLAN_TABLE列

データ型 説明

STATEMENT_ID

VARCHAR2(30)

EXPLAIN PLAN文で指定した、オプションのSTATEMENT_IDパラメータの値です。

PLAN_ID

NUMBER

データベース内の計画の一意の識別子です。

TIMESTAMP

DATE

EXPLAIN PLAN文が生成された日時です。

REMARKS

VARCHAR2(80)

実行計画の各ステップに関連付けるコメント(最大80バイト)です。この列は、問合せに使用されたのがアウトラインであるか、SQLプロファイルかを示します。

PLAN_TABLEの行に注釈を追加または変更する必要がある場合は、UPDATE文を使用してPLAN_TABLE文の行を変更する。

OPERATION

VARCHAR2(30)

このステップで実行された内部操作の名前です。文に対して生成された最初の行では、その列に次のいずれかの値が含まれる。

  • DELETE STATEMENT

  • INSERT STATEMENT

  • SELECT STATEMENT

  • UPDATE STATEMENT

この列の値の詳細は、PLAN_TABLEのOPERATION列とOPTION列を参照してください。

OPTIONS

VARCHAR2(225)

OPERATION列に記述されている操作に関するバリエーションです。

この列の値の詳細は、PLAN_TABLEのOPERATION列とOPTION列を参照してください。

OBJECT_NODE

VARCHAR2(128)

オブジェクト(表名またはビュー名)を参照するために使用されたデータベース・リンクの名前です。パラレル実行を指定したローカル問合せの場合、この列は、処理からの出力をデータベースが使用する順序を説明します。

OBJECT_OWNER

VARCHAR2(30)

表または索引を含むスキーマを所有しているユーザーの名前です。

OBJECT_NAME

VARCHAR2(30)

表または索引の名前です。

OBJECT_ALIAS

VARCHAR2(65)

SQL文に含まれる表またはビューの一意の別名。索引の場合は、基礎となる表のオブジェクトの別名。

OBJECT_INSTANCE

NUMERIC

元の文に指定されているオブジェクトの位置に対応する順番を示す数値です。番号付けは、元の文テキストの左から右へ、外側から内側へと行われます。ビューを展開した場合、この数値は予測できない。

OBJECT_TYPE

VARCHAR2(30)

オブジェクトに関する情報を示す修飾子(索引に対するNONUNIQUEなど)

OPTIMIZER

VARCHAR2(255)

オプティマイザの現行モードです。

SEARCH_COLUMNS

NUMBERIC

現在は使用されていません。

ID

NUMERIC

実行計画の各ステップに割り当てられた番号です。

PARENT_ID

NUMERIC

IDのステップの出力について処理を行う次の実行ステップのIDです。

DEPTH

NUMERIC

計画が示す行ソース・ツリー内の操作の深さ。この値を使用して、PLAN TABLEレポートの行をインデントできます。

POSITION

NUMERIC

最初の出力行の場合、この列は文の実行に見積もられたコストを示します。その他の行の場合は、同じ親の他の子に対応する相対位置を示す。

COST

NUMERIC

オプティマイザによって見積もられた操作コストです。表アクセス操作のコストは判断されない。この列の値には、特定の単位はなく、実行計画のコストを比較するために使用される重み値を示します。この列の値は、CPU_COST列およびIO_COST列の関数である。

CARDINALITY

NUMERIC

この操作がアクセスした行数の問合せ最適化アプローチによる見積りです。

BYTES

NUMERIC

この操作がアクセスしたバイト数の問合せ最適化アプローチによる見積りです。

OTHER_TAG

VARCHAR2(255)

OTHER列の内容を記述します。値は次のとおりです。

  • SERIAL(空白): シリアル実行。この場合、SQLはOTHER列に現在ロードされていない。

  • SERIAL_FROM_REMOTE (S -> R): リモート・サイトでシリアル実行されます。

  • PARALLEL_FROM_SERIAL (S -> P): シリアル実行。ステップの出力は、パーティション化されるか、パラレル実行サーバーにブロードキャストされる。

  • PARALLEL_TO_SERIAL (P -> S): パラレル実行。ステップの出力は、シリアルQCプロセスに戻されます。

  • PARALLEL_TO_PARALLEL (P -> P): パラレル実行。ステップの出力は、パラレル実行サーバーの2番目のセットに再パーティション化される。

  • PARALLEL_COMBINED_WITH_PARENT (PWP): パラレル実行。ステップの出力は、同じパラレル処理の次のステップに送られます。親へのプロセス間通信はなし。

  • PARALLEL_COMBINED_WITH_CHILD (PWC): パラレル実行。ステップの入力は、同じパラレル処理の前のステップから受け取る。子からのプロセス間通信はなし。

PARTITION_START

VARCHAR2(255)

アクセスしたパーティションの範囲のパーティションを開始します。次のいずれかの値を指定できます。

nは、開始パーティションがSQLコンパイラで識別され、そのパーティション番号がnで示されることを意味します。

KEYは、開始パーティションが実行時にパーティション・キー値から識別されることを示します。

ROW LOCATIONは、実行時に、取得された各レコードの位置から開始パーティション(終了パーティションと同じ)が計算されることを示します。このレコードの位置は、ユーザー指定のROWIDまたはグローバル索引によって取得されます。

INVALIDは、アクセスしたパーティションの範囲が空であることを意味します。

PARTITION_STOP

VARCHAR2(255)

アクセスされるパーティションの範囲の停止パーティション。次のいずれかの値を指定できます。

nは、終了パーティションがSQLコンパイラで識別され、そのパーティション番号がnで示されることを意味します。

KEYは、終了パーティションが実行時にパーティション・キー値から識別されることを示します。

ROW LOCATIONは、実行時に、取得された各レコードの位置から終了パーティション(開始パーティションと同じ)が計算されることを示します。レコードの位置は、ユーザーまたはグローバル索引によって取得される。

INVALIDは、アクセスしたパーティションの範囲が空であることを意味します。

PARTITION_ID

NUMERIC

PARTITION_STARTPARTITION_STOP列の値の対を計算したステップです。

OTHER

LONG

ユーザーにとって有効な実行ステップに関するその他の情報です。OTHER_TAG列を参照してください。

DISTRIBUTION

VARCHAR2(30)

プロデューサ問合せサーバーからコンシューマ問合せサーバーへ行を分配する方法です。

この列に使用可能な値の詳細は、PLAN_TABLEのDISTRIBUTION列を参照してください。コンシューマ問合せサーバーおよびプロデューサ問合せサーバーの詳細は、Oracle Database VLDBおよびパーティショニング・ガイドを参照してください。

CPU_COST

NUMERIC

オプティマイザによって見積もられた操作のCPUコスト。この列の値は、操作に必要なマシン・サイクル数に比例する。ルールベースのアプローチを使用する文の場合、この列はNULLです。

IO_COST

NUMERIC

オプティマイザによって見積もられた操作のI/Oコスト。この列の値は、操作で読み込まれるデータ・ブロック数に比例する。ルールベースのアプローチを使用する文の場合、この列はNULLです。

TEMP_SPACE

NUMERIC

オプティマイザによって見積られた、操作で使用される一時領域をバイト単位で表したものです。ルールベース・アプローチを使用する文の場合、または一時領域を使用しない操作の場合、この列はNULLです。

ACCESS_PREDICATES

VARCHAR2(4000)

アクセス構造内の行の検索に使用する述語。たとえば、開始述語または停止述語は索引レンジ・スキャンに使用。

FILTER_PREDICATES

VARCHAR2(4000)

フィルタにかけた後で行を生成する場合に使用する述語です。

PROJECTION

VARCHAR2(4000)

操作によって生成される式です。

TIME

NUMBER(20,2)

問合せの最適化によって見積られた操作の秒単位の経過時間です。ルールベースのアプローチを使用する文の場合、この列はNULLです。

QBLOCK_NAME

VARCHAR2(30)

問合せブロックの名前です。システム生成またはQB_NAMEヒントによるユーザー定義のいずれかとなります。

PLAN_TABLEのOPERATION列とOPTION列には、EXPLAIN PLAN文によって生成されるOPERATIONOPTIONSの各組合せと、その実行計画におけるそれぞれの意味を示します。

関連項目:

PLAN_TABLEの詳細は、Oracle Databaseリファレンスを参照してください。

7.2 PLAN_TABLEのOPERATION列とOPTION列

この表は、PLAN_TABLEのOPERATION列とOPTIONS列の各組合せおよびその実行計画におけるそれぞれの意味を示しています。

表7-2 EXPLAIN PLANによって生成されるOPERATION値とOPTIONS値

操作 オプション 説明

AND-EQUAL

複数のROWIDのセットを受け取り、重複をなくして、そのセットの共通部分を戻す処理。この処理は単一列索引のアクセス・パスに対して使用されます。

BITMAP

CONVERSION

TO ROWIDSは、ビットマップ表現を、表にアクセスするために使用できる実際のROWIDに変換します。

FROM ROWIDSは、ROWIDをビットマップ表現に変換します。

COUNTは、実際の値を必要としない場合にROWIDの数を戻します。

BITMAP

INDEX

SINGLE VALUEは、索引内の単一のキー値のビットマップを参照します。

RANGE SCANは、ある範囲のキー値のビットマップを取り出します。

FULL SCANは、開始キーまたは終了キーがない場合にビットマップ索引の全体スキャンを実行します。

BITMAP

MERGE

レンジ・スキャンの結果の複数のビットマップを1つのビットマップにマージします。

BITMAP

MINUS

片方のビットマップのビットを、もう一方のビットマップから減算します。行ソースは否定述語に対して使用されます。このオプションは、減算が発生する可能性があるビットマップを作成する非否定述語がある場合にのみ使用できます。

BITMAP

OR

2つのビットマップのビット単位のORを計算します。

BITMAP

AND

2つのビットマップのビット単位のANDを計算します。

BITMAP

KEY ITERATION

表の行ソースから各行を取り出し、ビットマップ索引から対応するビットマップを検索します。その後、このビットマップのセットは、次のBITMAP MERGE操作で1つのビットマップにマージされます。

CONNECT BY

CONNECT BY句を含んでいる問合せについて階層順に行を取り出します。

CONCATENATION

複数の行のセットを受け取り、そのセットのUNION-ALLを戻す処理。

COUNT

表から選択された行の数をカウントする処理。

COUNT

STOPKEY

戻される行数をWHERE句のROWNUM式によって制限するカウント処理。

CUBE JOIN

左側の表またはビューおよび右側のキューブを結合します。

NO_USE_CUBEおよびUSE_CUBEヒントについて学習するには、『Oracle Database SQL言語リファレンス』を参照してください。

CUBE JOIN

ANTI

左側の表またはビューおよび右側のキューブに対してアンチ結合を使用します。

CUBE JOIN

ANTI SNA

左側の表またはビューおよび右側のキューブに対してアンチ結合(片面NULL対応)を使用します。右側の結合列(キューブ側)はNOT NULLです。

CUBE JOIN

OUTER

左側の表またはビューおよび右側のキューブに対して外部結合を使用します。

CUBE JOIN

RIGHT SEMI

左側の表またはビューおよび右側のキューブに対して右側セミ結合を使用します。

CUBE SCAN

すべてのキューブ・アクセスで内部結合を使用します。

CUBE SCAN

PARTIAL OUTER

少なくとも1つのディメンションで外部結合を使用し、その他のディメンションで内部結合を使用します。

CUBE SCAN

OUTER

すべてのキューブ・アクセスで外部結合を使用します。

DOMAIN INDEX

ドメイン索引からの1つ以上のROWIDの取出し。オプション列には、ユーザー定義ドメイン・インデックス・コスト関数から与えられた情報が含まれています。

FILTER

行のセットを受け取り、そのいくつかを取り除き、残りを戻す処理。

FIRST ROW

問合せで選択される最初の行のみの取出し。

FOR UPDATE

FOR UPDATE句が含まれている問合せによって選択される行を取り出し、ロックする処理。

HASH

GROUP BY

GROUP BY句を持つ問合せで、行のセットを複数のグループにハッシュする処理。

HASH

GROUP BY PIVOT

GROUP BY句を持つ問合せで、行のセットを複数のグループにハッシュする処理。PIVOT操作は、HASH GROUP BY演算子のピボット固有の最適化を示します。

HASH JOIN

(これらは結合操作です。)

2つのセットの行を結合し、結果を戻す操作。この結合方法は、データのラージ・データ・セット(DSSやバッチなど)の結合に役立ちます。この結合条件は、第2の表にアクセスする場合に有効です。

問合せオプティマイザは、2つの表またはデータ・ソースの小さいほうを使用して、メモリー内に結合キーについてのハッシュ表を作成します。次に、大きいほうの表をスキャンし、ハッシュ表を調べて結合された行を見つけます。

HASH JOIN

ANTI

ハッシュ(左側)アンチ結合

HASH JOIN

SEMI

ハッシュ(左側)セミ結合

HASH JOIN

RIGHT ANTI

ハッシュ右側アンチ結合

HASH JOIN

RIGHT SEMI

ハッシュ右側セミ結合

HASH JOIN

OUTER

ハッシュ(左側)外部結合。

HASH JOIN

RIGHT OUTER

ハッシュ(右側)外部結合。

INDEX

(これらはアクセス方法です。)

UNIQUE SCAN

索引からの単一のROWIDの取出し。

INDEX

RANGE SCAN

索引からの1つ以上のROWIDの取出し。索引値は昇順でスキャンされます。

INDEX

RANGE SCAN DESCENDING

索引からの1つ以上のROWIDの取出し。索引値は降順でスキャンされます。

INDEX

FULL SCAN

スタート・キーおよびストップ・キーがない場合の、索引からのすべてのROWIDの取得。索引値は昇順でスキャンされます。

INDEX

FULL SCAN DESCENDING

スタート・キーおよびストップ・キーがない場合の、索引からのすべてのROWIDの取得。索引値は降順でスキャンされます。

INDEX

FAST FULL SCAN

マルチブロックREADを使用した全ROWID(および列の値)の取得。ソート順は定義できません。索引付けされた列に対してのみ、全表スキャンと比較されます。コストベース・オプティマイザでのみ使用可能です。

INDEX

SKIP SCAN

索引内の先頭列を使用しない、連結索引からのROWIDの取得。コストベース・オプティマイザでのみ使用可能です。

INLIST ITERATOR

INリスト述語内の各値に対して、計画内の次の操作を反復します。

INTERSECTION

2つの行のセットを受け取り、重複をなくして、そのセットの共通部分を戻す処理。

MERGE JOIN

(これらは結合操作です。)

2つの行のセットを受け取り、それぞれを特定の値でソートし、一方のセットの各行を他方の行と突き合せて結合し、その結果を戻す処理。

MERGE JOIN

OUTER

外部結合文を実行するマージ結合処理。

MERGE JOIN

ANTI

マージ・アンチ結合。

MERGE JOIN

SEMI

マージ・セミ結合。

MERGE JOIN

CARTESIAN

文中に他の表への結合条件を持たない1つ以上の表について発生する操作です。結合とともに発生する可能性がありますが、計画内ではCARTESIANとフラグが付かないことがあります。

CONNECT BY

CONNECT BY句を含んでいる問合せに対する、階層順での行の取出し。

MAT_VIEW REWRITE ACCESS

(これらはアクセス方法です。)

FULL

マテリアライズド・ビューのすべての行の取出し。

MAT_VIEW REWRITE ACCESS

SAMPLE

マテリアライズド・ビューのサンプル行の取出し。

MAT_VIEW REWRITE ACCESS

CLUSTER

索引クラスタのキーの値に基づいた、マテリアライズド・ビューからの行の取出し。

MAT_VIEW REWRITE ACCESS

HASH

ハッシュ・クラスタのキーの値に基づいた、マテリアライズド・ビューからの行の取出し。

MAT_VIEW REWRITE ACCESS

BY ROWID RANGE

ROWID範囲に基づいたマテリアライズド・ビューからの行の取出し。

MAT_VIEW REWRITE ACCESS

SAMPLE BY ROWID RANGE

ROWID範囲に基づいたマテリアライズド・ビューからのサンプル行の取出し。

MAT_VIEW REWRITE ACCESS

BY USER ROWID

ユーザー指定のROWIDを使用してマテリアライズド・ビューの行が指定される場合。

MAT_VIEW REWRITE ACCESS

BY INDEX ROWID

マテリアライズド・ビューがパーティション化されておらず、索引を使用して行が指定される場合。

MAT_VIEW REWRITE ACCESS

BY GLOBAL INDEX ROWID

マテリアライズド・ビューがパーティション化されており、グローバル索引のみを使用して行が指定される場合。

MAT_VIEW REWRITE ACCESS

BY LOCAL INDEX ROWID

マテリアライズド・ビューがパーティション化されており、1つ以上のローカル索引と、場合によってはいくつかのグローバル索引を使用して行が指定される場合。

パーティション区間:

パーティション区間は次のようにして計算されている可能性があります。

前のPARTITIONステップによって決定される場合。この場合、PARTITION_START列の値とPARTITION_STOP列の値はPARTITIONステップ内の値をレプリケートし、PARTITION_IDにはPARTITIONステップのIDが組み込まれます。PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYおよびINVALIDです。

MAT_VIEW REWRITE ACCESSまたはINDEXステップ自体で決定される場合。この場合、PARTITION_IDにはそのステップのIDが組み込まれます。PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYROW REMOVE_LOCATION(MAT_VIEW REWRITE ACCESSのみ)およびINVALIDです。

MINUS

2つの行のセットを受け取り、最初のセットにあって2番目のセットにない行を戻して、重複をなくす処理。

NESTED LOOPS

(これらは結合操作です。)

外側のセットと内側のセット、2つの行のセットを受け取る処理。Oracle Databaseは、外側のセットの各行を内側のセットの各行と比較し、条件を満たす行を戻します。この結合方法は、小さいサブセットのデータを結合する場合(OLTP)に役立ちます。この結合条件は、第2の表にアクセスする場合に有効です。

NESTED LOOPS

OUTER

外部結合文を実行するネステッド・ループ操作。

PARTITION

PARTITION_START列およびPARTITION_STOP列によって指定された範囲の各パーティションに対して、計画内の次の操作を反復します。PARTITIONは、単一のパーティション・オブジェクト(表または索引)や同一レベル・パーティション・オブジェクトのセット(パーティション表やそのローカル索引)に適用できるパーティションの区間を示します。パーティションの区間は、PARTITIONPARTITION_STARTおよびPARTITION_STOPの値で指定されます。パーティションの開始および終了の有効な値は、表6-2を参照してください。

PARTITION

SINGLE

1つのパーティションへのアクセス。

PARTITION

ITERATOR

多数のパーティション(サブセット)へのアクセス。

PARTITION

ALL

すべてのパーティションへのアクセス。

PARTITION

INLIST

INリスト述語を基準にしたイテレータに類似するもの。

PARTITION

INVALID

アクセスするよう設定されているパーティションが空であることを示します。

POLYMORPHIC TABLE FUNCTION

多相表関数の行ソースを示します。これは、戻り型が引数によって決定される表関数です。

PX ITERATOR

BLOCKCHUNK

パラレル実行サーバー・セット間でのブロックまたはチャンク範囲へのオブジェクトの分割を実装します。

PX COORDINATOR

パラレル実行サーバーを使用して下位のパラレル計画を制御、スケジュールおよび実行する問合せコーディネータを実装します。また、パラレルに実行され、常に下位にPX SEND QC操作を持つ計画部分の終わりとして、シリアライズ・ポイントを表します。

PX PARTITION

セマンティクスは通常のPARTITION操作と同じですが、パラレル計画に表示されます。

PX RECEIVE

PX SENDノード上で実行される送信側/プロデューサ(QCまたはパラレル実行サーバー)から再パーティション化されたデータを読み取る、コンシューマ/受信側パラレル実行ノードを示します。以前は、この情報はDISTRIBUTION列に表示されていました。表7-1を参照してください。

PX SEND

QC (RANDOM)HASHRANGE

スレーブの2つのパラレル実行サーバー・セットの間における配分方法を実装します。2つのセット間の境界と、送信側/プロデューサ側(QCまたはスレーブ)でのデータのパーティション化方法を示します。以前は、この情報はDISTRIBUTION列に表示されていました。表7-1を参照してください。

REMOTE

リモート・データベースからのデータの取出し。

SEQUENCE

順序値のアクセスを伴う処理。

SORT

AGGREGATE

選択した行のセットにグループ関数を適用した後の単一行の取得。この場合、データベースは単一の行を「ソート」します。

SORT

UNIQUE

行のセットをソートし、重複をなくす処理。

SORT

GROUP BY

GROUP BY句を持つ問合せで、行のセットを複数のグループにソートする処理。

SORT

GROUP BY PIVOT

GROUP BY句を持つ問合せで、行のセットを複数のグループにソートする処理。PIVOT操作は、SORT GROUP BY演算子のピボット固有の最適化を示します。

SORT

JOIN

マージ結合の前に、一連の行をソートする操作。

SORT

ORDER BY

ORDER BY句を持つ問合せに対して行のセットをソートする処理。

TABLE ACCESS

(これらはアクセス方法です。)

FULL

表のすべての行の取出し。

TABLE ACCESS

SAMPLE

表のサンプル取得された行の取出し。

TABLE ACCESS

CLUSTER

索引クラスタのキーの値に基づいた、表からの行の取出し。

TABLE ACCESS

HASH

ハッシュ・クラスタのキーの値に基づいた、表からの行の取出し。

TABLE ACCESS

BY ROWID RANGE

ROWID範囲に基づいた表からの行の取出し。

TABLE ACCESS

SAMPLE BY ROWID RANGE

ROWID範囲に基づいた表からのサンプル行の取出し。

TABLE ACCESS

BY USER ROWID

ユーザー指定のROWIDを使用して表の行が指定される場合。

TABLE ACCESS

BY INDEX ROWID

表がパーティション化されておらず、索引を使用して行が指定される場合。

TABLE ACCESS

BY GLOBAL INDEX ROWID

表がパーティション化されており、グローバル索引のみを使用して行が指定される場合。

TABLE ACCESS

BY LOCAL INDEX ROWID

表がパーティション化されており、1つ以上のローカル索引と場合によってはいくつかのグローバル索引を使用して、行が指定される場合。

パーティション区間:

パーティション区間は次のようにして計算されている可能性があります。

前のPARTITIONステップによって決定される場合。この場合、PARTITION_START列の値とPARTITION_STOP列の値はPARTITIONステップ内の値をレプリケートし、PARTITION_IDにはPARTITIONステップのIDが組み込まれます。PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYおよびINVALIDです。

TABLE ACCESSまたはINDEXステップ自体で決定される場合。この場合、PARTITION_IDにはそのステップのIDが組み込まれます。PARTITION_STARTおよびPARTITION_STOPに使用できる値は、NUMBER(n)、KEYROW REMOVE_LOCATION(TABLE ACCESSのみ)およびINVALIDです。

TRANSPOSE

GROUP BYの結果を入れ換えて最終的にピボットされたデータを生成するPIVOT操作を評価する操作。

UNION

2つの行のセットを受け取り、重複をなくして、そのセットの連結結果を戻す処理。

UNPIVOT

列から行にデータを回転させる操作。

VIEW

ビューの問合せを実行し、結果の行を別の処理に戻す処理。

7.3 PLAN_TABLEのDISTRIBUTION列

DISTRIBUTION列は、プロデューサ問合せサーバーからコンシューマ問合せサーバーに行を分散するために使用されたメソッドを示します。

表7-3 PLAN_TABLEのDISTRIBUTION列の値

DISTRIBUTIONテキスト 説明

PARTITION (ROWID)

UPDATEまたはDELETEを実行する行のROWIDを使用し、表または索引のパーティション化に基づいて行を問合せサーバーにマップします。

PARTITION (KEY)

列のセットを使用し、表または索引のパーティション化に基づいて行を問合せサーバーにマップします。パーシャル・パーティション・ワイズ結合、PARALLEL INSERT、パーティション表のCREATE TABLE AS SELECTおよびCREATE PARTITIONED GLOBAL INDEXに使用します。

HASH

結合キーについて、ハッシュ関数を使用して、行を問合せサーバーにマップします。PARALLEL JOINまたはPARALLEL GROUP BYに使用します。

RANGE

ソート・キーの範囲を使用して、行を問合せサーバーにマップします。文にORDER BY句がある場合に使用します。

ROUND-ROBIN

行を問合せサーバーにランダムにマップします。

BROADCAST

表全体の行を各問合せサーバーにブロードキャストします。ある表がその他の表に比べて非常に小さい場合、パラレル結合に使用します。

QC (ORDER)

QCは、最初の問合せサーバーから最後の問合せサーバーまで順番に入力データを受け取ります。文にORDER BY句がある場合に使用します。

QC (RANDOM)

QCは、入力をランダムに受け取ります。文にORDER BY句がない場合に使用します。