ORACLEMASTER 備忘録8(10/10)
続き
従来型パス:
デフォルトのロード方法。SQLの“INSERT分”が生成されて、データ表に挿入される。この方法では、その他のすべてのプロセスと均等にバッファ・リソースの競合が発生するため、時間がかかる可能性がある。
ダイレクトパス:
“ダイレクトパスAPI”を使用して、データをサーバーのロードエンジンに渡す。ロードエンジンは、渡されたデータから列配列構造体を作成する。
この方法では、ほかのユーザーとデータベースリソースの競合が発生しない。さらに、データブロックをフォーマットして、それを直接データベースファイルに書き込むことで、通常発生するデータ処理の大半を回避できるため、データベースのオーバーヘッドを大幅に削減できる。
通常はダイレクトパスのほうが従来型パスよりも早くデータをロードできる。ただし、ダイレクトパスにはいくつかの制限があるため、従来型パスを使用する必要がある場合もある。
SQL*Loaderを使用した表へのデータのロード
SQL Developerを使用してSQL*Loaderを呼び出し、表にデータをロードするには次の手順を実行する。
- データファイルをテキストエディタで作成する。
- SQL Developerで、データをロードする表を右クリックして「データのインポート」選択する。
- 作成したファイルを選択して、「開く」ボタンをクリックする。
- 「データのインポート・ウィザード-ステップ1/5」ページで、データファイルが読み込まれたことを確認する。今回のデータファイルはヘッダーを記述してないので、「ヘッダー」チェックボックスはオフにする。「次へ」ボタンをクリックする。
- 「データのインポート・ウィザード-ステップ2/5」ページで、「インポート方法」を選択する。今回は「SQL*Loaderユーティリティ」を選択して、「次へ」ボタンをクリックする。
- 「データのインポート・ウィザード-ステップ3/5」ページで、ソースデータの例とターゲット表の列が正しくマッピングされていることを確認する。「次へ」ボタンをクリックする。
- 「データのインポート・ウィザード-ステップ4/5」ページで、ログファイルを置くディレクトリや不正なファイルを置くディレクトリ、作成されるファイルを置くためのディレクトリなど指定する。「次へ」ボタンをクリックする。
- 「データのインポート・ウィザード-ステップ5/5」ページで、「検証」ボタンをクリックすると、設定が適切かが検証される。「終了」ボタンをクリックする。
- 手順7で指定したディレクトリにbatファイル、ctlファイル、shファイルが作成される。