ヘッダーをスキップ
Oracle® Warehouse Builder概要
11gリリース2 (11.2)
B61348-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

6 データ変換

ここでは、Oracle Warehouse Builderのデータの抽出、変換およびロード(ETL)マッピングの設計および実装に関連する基本的な概念について説明します。

この項の内容は次のとおりです。

Oracle Warehouse Builderマッピングを使用したデータ変換

データ変換とは、データをソース・データ形式から宛先データ形式に変換することを指す用語です。通常、データ変換には2つの手順が必要であり、最初に(ソースからターゲットへの)データ・マッピングによって必要な変換が取得され、次にコード生成によって実際の変換プロセスが作成されます。ソース・データをインポートしてターゲットを定義した後で、ソース・データをターゲットに必要な出力に変換する方法を決定します。Oracle Warehouse Builderのマッピング・エディタにより、マッピングを指定してデータを変換する方法がガイドされます。マッピングは、ソースからのデータ抽出、データ変換および1つ以上のターゲットへのデータのロードに必要となる操作の順序を記述したものです。

変換とは、データの変換を可能にするPL/SQLファンクション、プロシージャ、パッケージおよびタイプです。変換は、ETLプロセスを定義するマッピングとプロセス・フローを設計する場合に使用します。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』のWarehouse Builderにおけるデータ変換およびOracle Warehouse Builderマッピングの概要に関する項

データ・フローおよび変換-マッピングのコード生成

マッピングは、データ・フローおよびデータで実行される操作をビジュアル表示します。マッピングで定義したETLロジックに基づいて、Oracle Warehouse Builderにより設計の実装に必要なコードが生成されます。Oracle Warehouse Builderでは次の言語のコードを生成できます。

  • PL/SQL: PL/SQLは、Procedural Language/Standard Query Languageの略語です。手続き型言語で使用される構成概念を追加することでSQLを拡張した、SQLよりも強力な構造化言語です。

  • SQL*Loader: SQL*Loaderは、ファイルからOracleのデータベース表にデータをロードするためのOracleツールです。SQL*Loaderはフラット・ファイルから大量のデータをロードする最も効率的な手段です。

  • SAP ABAP: ABAPは、SAP R/3システム(ビジネス・アプリケーション・サブシステム)のアプリケーションを開発するためのプログラミング言語です。

  • コード・テンプレート(CTマッピング): コード・テンプレート(CT)マッピングの場合、Oracle Warehouse Builderは、コード・テンプレートの内容に基づいてデータ抽出コードまたは他のマッピング・コードを生成します。


注意:

Oracle Warehouse Builderのスクリプト・インタフェースであるOMB*Plusを使用してマッピングを作成および定義する場合は、『Oracle Warehouse Builder APIおよびスクリプト・リファレンス』の説明に従ってください。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』の次の項
  • 「プロセス・フローの設計」

  • 「PL/SQLマッピング設計のベスト・プラクティス」

  • 「SQL*Loaderマッピング設計のベスト・プラクティス」

  • 「SAPシステムからのデータの取得」

  • 「コード・テンプレート・マッピングの作成」

  • 「マッピングおよびプロセス・フローのリファレンス」

  • 「マッピング構成のリファレンス」


マッピング演算子

マッピング演算子は、マッピングの基本となる設計要素です。マッピングを設計するときは、マッピング・エディタ・パレットから演算子を選択すると、作業領域またはキャンバスに視覚的にドラッグできます。演算子は、データ・フローのソースおよびターゲットを表現します。また、演算子は、ソースからターゲットへのデータの変換方法も定義します。選択する演算子によって、マッピングの設計方法が異なります。

選択した演算子に基づいて、Oracle Warehouse Builderにより、次のいずれかのマッピング生成言語にマッピングが割り当てられます。

  • PL/SQL。フラット・ファイル演算子がソースまたはSAP/R3ソースとして指定されていないマッピングに対しては、Oracle Warehouse BuilderによりPL/SQLコードが生成されます。PL/SQLマッピングの設計上の考慮事項は、指定するオペレーティング・モード(行ベースまたはセット・ベース)によって異なります。

  • SQL*Loader。フラット・ファイル演算子をソースとして定義すると、Oracle Warehouse BuilderによりSQL*Loaderコードが生成されます。SQL*Loaderマッピングを正しく設計するには、『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』のフラット・ファイルのソースおよびターゲット演算子の使用に関する項に記載されているガイドラインに従ってください。

  • ABAP(SAPベースのスクリプト)。SAP/R3ソースを定義すると、Oracle Warehouse BuilderによりABAPコードが生成されます。SAPソースに対するマッピングの設計上の考慮事項は、『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』のSQL*Loader、SAPおよびコード・テンプレート・マッピングの作成に関する項を参照してください。

各言語では、マッピングを設計する際、特定のルールに従う必要があります。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』の次のトピック
  • 「PL/SQLマッピングの作成」

  • 「フラット・ファイルからデータを抽出するSQL*Loaderマッピングの作成」

  • 「SAP抽出マッピングの作成」

  • 「OracleターゲットCTマッピングで直接サポートされる場合のみのマッピング演算子」


プラガブル・マッピング

プラガブル・マッピング演算子は、マッピング演算子の再利用可能なグループで、単一の演算子として機能します。プラガブル・マッピングは、SQL*PlusやCなどのプログラミング言語のファンクションと類似しているので、埋め込まれているETLロジックを再利用できます。

プラガブル・マッピングは、定義されると、マッピング内でネストした単一のマッピング演算子として表示されます。プラガブル・マッピングは、同じマッピング内またはその他のマッピング内で複数回使用できます。プラガブル・マッピングはその他のプラガブル・マッピング内に含めることができます。

その他の演算子と同様、プラガブル・マッピングには、様々なマッピング内のその他の演算子に接続するための入出力属性で構成されるシグネチャがあります。シグネチャは、プログラミング言語におけるファンクションの入出力要件と類似しています。

プラガブル・マッピングは、再使用することや、埋め込むことができます。

  • プラガブル・マッピングの再使用: プラガブル・マッピングが参照するメタデータが格納されているマッピングの外部に存在できる場合、プラガブル・マッピングは再使用可能です。

  • 埋め込まれたプラガブル・マッピング: プラガブル・マッピングが参照するメタデータが格納されているマッピングまたはプラガブル・マッピングによって所有されている場合にのみ、プラガブル・マッピングは埋め込まれます。


注意:

プラガブル・マッピングを使用するには、Oracle Warehouse BuilderのEnterprise ETLオプションが必要です。このオプションの詳細は、『Oracle Databaseライセンス情報』を参照してください。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』のプラガブル・マッピングの使用に関する項。

マッピングを設計する変換

変換とは、データの変換を可能にするPL/SQLファンクション、プロシージャ、テーブル・ファンクションおよびパッケージです。変換は、ETLプロセスを定義するマッピングとプロセス・フローを設計する場合に使用します。

変換の内容は、次のとおりです。

事前定義済変換およびカスタム変換

Oracle Warehouse Builderには、標準的な変換操作を実行できる一連の事前定義済変換が用意されています。事前定義済変換は、組込みおよびシードされたファンクションとプロシージャで構成されているOracleライブラリに含まれています。データの変換には、これらの事前定義済変換を直接使用できます。

カスタム変換はユーザーが作成する変換です。カスタム変換では、定義の一部に事前定義済変換を使用できます。PL/SQLパッケージもインポートできます。インポートしたパッケージのパッケージ本体は変更できますが、ファンクションまたはプロシージャのシグネチャとなるパッケージ・ヘッダーは変更できません。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』の変換に関する項

変換ライブラリ

変換ライブラリは、再利用可能な一連の変換で構成されています。プロジェクトを作成するたびに、Oracle Warehouse Builderによって該当するプロジェクトに対する変換操作を含む変換ライブラリが作成されます。このライブラリには、標準的なOracleライブラリ、およびプロジェクト内で定義された各Oracleモジュールの追加ライブラリが含まれます。

変換ライブラリは、デザイン・センターにあるグローバル・ナビゲータの「パブリック変換」ノードの下にあります。

変換ライブラリは、次のタイプのいずれかです。

  • 事前定義済のファンクションの集まりで、グローバル共有ライブラリのプロシージャを定義できるOracleライブラリ。

  • ユーザーが作成した再利用可能な変換の集合であるグローバル共有ライブラリ。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』の変換ライブラリに関する項

テーブル・ファンクション

Oracle Warehouse Builderには、マッピングのテーブル・ファンクション演算子を定義する機能があります。テーブル・ファンクション演算子を使用して、マッピングのテーブル・ファンクションを表します。テーブル・ファンクション演算子を使用すると、入力行セットを操作し、同一または異なるカーディナリティを持つ別の行セットを戻すことができます。テーブル・ファンクションを使用すると、データ・ウェアハウスのロード時にパフォーマンスを大幅に向上できます。


関連項目:

『Oracle Warehouse Builderデータ・モデリング、ETLおよびデータ・クオリティ・ガイド』のテーブル・ファンクション演算子に関する項