SELECT
文でパラレル問合せとパラレル副問合せを使用できます。DDL文とDML文(INSERT
、UPDATE
およびDELETE
)の問合せ部分もパラレルで実行できます。また、外部表をパラレルで問い合せることもできます。
パラレル化の2つの要素は、パラレル化の決定と並列度(DOP)です。これらの要素の決定方法は、問合せ、DDL操作およびDML操作で異なります。DOPを決定するときに、Oracle Databaseは次の参照オブジェクトを調べます。
パラレル問合せは、パラレルで実行される問合せの部分で、それぞれの表および索引を調べて、どれが参照表かを決定します。原則として、最大のDOPが設定された表または索引を選択します。
パラレルDML(INSERT
、UPDATE
、MERGE
およびDELETE
)では、DOPを決定する参照オブジェクトは、挿入、更新または削除操作によって変更される表です。パラレルDMLではデッドロックを防ぐためにDOPに制限が課せられます。パラレルDML文に副問合せが含まれる場合、副問合せのDOPはDML操作のDOPと同じになります。
パラレルDDLでは、DOPを決定する参照オブジェクトは、作成、再構築、分割または移動される表、索引またはパーティションです。パラレルDDL文に副問合せが含まれる場合、副問合せのDOPはDDL操作と同じになります。
この項の内容は次のとおりです。
パラレル問合せがプロセスで実行される方法の詳細は、「SQL文のパラレル実行」を参照してください。リモート・オブジェクトを参照する問合せの例は、「分散トランザクションの制限」を参照してください。問合せをパラレルで実行するための条件とDOPを決定する要素の詳細は、「問合せのパラレル化のルール」を参照してください。