並列処理の制限
並列処理はすべての照会で使用されるわけではありません。アクセス・パスによっては、並列処理 のためのオーバーヘッドをかけても意味がないことがあります。 同様に、並列処理が使用可能な場合、並列処理の効率を低下させる可能性がある特定のアクセス・パスは検討対象から外されます。
並列処理を使用しない場合
例えば、一時表から選択する場合は、並列処理は使用できま せん。 次の表を調べて、並列処理が許可されないアクセス・パスを照会が使用しているかどうかを判断してください。
| 照会に含まれる処理 | CP並列処理 | コメント |
|---|---|---|
| RID リストを介した並行アクセス (リスト・プリフェッチおよび複数索引アクセス) | はい | PLAN_TABLE の PREFETCH 列は「L」に なり、PLAN_TABLE の ACCESSTYPE 列は M、MX、MI、または MQ になります。 |
| LOB 値にアクセスする照会ブロック。 | いいえ | |
| 直接行アクセスに適した照会 | いいえ | PLAN_TABLE の PRIMARY_ACCESS_TYPE 列の「D」で示されます。 |
| 参照時のマテリアライズ・ビューまたはマテリアライズ表式 | はい | CP の「はい」は、全外部結合がない場合に適用されます。 |
| 表上のセキュリティー・ラベル列 | はい | |
| XML 値にアクセスする照会ブロック。 | いいえ | |
| 配列値を参照する照会ブロック | いいえ | |
| DOCID リストを戻す複数索引アクセス | いいえ | PLAN_TABLE の ACCESSTYPE 列の 'DX'、'DI'、または 'DU' で示されます |
| 参照時の外部結合の結果 | いいえ | |
| 参照時の CTE | いいえ | |
| 表関数 | いいえ | |
| グローバル一時表の作成 | いいえ | |
| IN リストによる並行アクセス | はい | PLAN_TABLE で ACCESSTYPE='N' または 'I' で示されます。 |
| IN 副照会による並行アクセス | いいえ | PLAN_TABLE の ACCESSTYPE='N' で示されます。 |
| スター結合のファクト表へのアクセスには DPSI が使用されます。 | いいえ | |
| 自律型プロシージャー | いいえ | |
| 相関副照会ブロック | いいえ | |
| 両方向スクロール・カーソル | いいえ | |
| 分離レベル 'RR' または 'RS' で保持されたカーソル | いいえ | |
| 分離レベル 'RR' または 'RS' | はい | |
| 再帰的 CTE 本体 | いいえ | |
| ハッシュ・アクセス | いいえ | |
| 範囲リスト・アクセス | いいえ | |
| 逆索引スキャン | いいえ | |
| 表ロケーター | いいえ | |
| ROWID 列による並行アクセス | いいえ | |
| 10 進浮動小数点列による並行アクセス | いいえ | |
パーティション別成長テーブルスペースで一時テーブルを宣言![]() |
いいえ![]() |
![]() |
並列処理により制限されるアクセス・パス
並列処理を利用できるようにするために、並列処理が有効になっている場合、Db2は、特定のアクセス・パスを選択しません。 プランまたはパッケージがDEGREE(ANY)でバインドされている場合、または、CURRENTDEGREE特殊レジスターが'ANY,'に設定されている場合、 Db2 SORTN_JOIN=Yを使用してハイブリッド結合を選択しません。
パーティション別成長テーブルスペースで一時テーブルを宣言