sql >> データベース >  >> RDS >> Oracle

Oraclesqlldrは複数のINFILEを並行して処理しますか

    「直接ロード」を使用しているため、並列化することはできません。

    直接ロードは、テーブル/パーティションの最高水準点を「ロック」し、そこにデータを配置します...したがって、別のプロセスはそれを並列にロックできません。並列プロセスでは、現在のロードが終了するまで待機する必要があります(ロード先のパーティションは制御しないと思います。制御できる場合は、より適切に調整できますが、通常はパーティションを使用する場合、ロードするデータはパーティションに分割されるため、ファイルに分割されません...)

    「それをあきらめる」場合、並列は指定したパラメーターによって「自動的に」管理されます。

    ただし、「直接ロード」を使用することをお勧めします。これは、他のどのロード方法よりもはるかに高速であるためです(ただし、ロックは非常に「大きい」ためです)。




    1. OracleのTRANSLATE(…USING)関数

    2. 配列内のSQLLIKE%

    3. Oracleの再帰クエリ

    4. SQL IN()句の値の順序による順序付け