Oracle Data Integrator で e-Sales Manager データをETL

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Oracle Data Integrator を使用してe-Sales Manager のデータをデータウェアハウスに転送する方法を説明します。

JDBC 標準を使用して、既存のスキルを活かしながらe-Sales Manager に読み書きできます。 Oracle Data Integrator(ODI)などの ETL ツールにドロップインで統合できる CData JDBC Driver for e-Sales Manager を使えば、リアルタイムのe-Sales Manager のデータをデータウェアハウス、ビジネスインテリジェンス、ビッグデータテクノロジーに接続できます。

JDBC 接続により、ODI でe-Sales Manager を他のデータベースと同様に扱うことができます。RDBMS と同じように、フラットファイルではなくリアルタイムでe-Sales Manager API に直接接続できます。

この記事では、JDBC ベースの ETL(e-Sales Manager から Oracle へ)の手順を説明します。e-Sales Manager エンティティのデータモデルをリバースエンジニアリングした後、マッピングを作成し、データロード戦略を選択します。ドライバーが SQL-92 をサポートしているため、組み込みの SQL to SQL Loading Knowledge Module を選択するだけで簡単に実現できます。

ドライバーのインストール

ドライバーをインストールするには、インストールフォルダにあるドライバー JAR(cdata.jdbc.esalesmanager.jar)と .lic ファイル(cdata.jdbc.esalesmanager.lic)を、ODI の適切なディレクトリにコピーします。

  • UNIX/Linux(エージェントなし): ~/.odi/oracledi/userlib
  • UNIX/Linux(エージェントあり): ~/.odi/oracledi/userlib および $ODI_HOME/odi/agent/lib
  • Windows(エージェントなし): %APPDATA%\Roaming\odi\oracledi\userlib
  • Windows(エージェントあり): %APPDATA%\odi\oracledi\userlib および %APPDATA%\odi\agent\lib

ODI を再起動してインストールを完了します。

モデルのリバースエンジニアリング

モデルをリバースエンジニアリングすると、ドライバーのe-Sales Manager のデータに対するリレーショナルビューのメタデータが取得されます。リバースエンジニアリング後は、リアルタイムのe-Sales Manager のデータをクエリし、e-Sales Manager テーブルに基づいてマッピングを作成できます。

  1. ODI でリポジトリに接続し、New -> Model and Topology Objects をクリックします。
  2. 表示されるダイアログの Model 画面で、以下の情報を入力します。
    • Name: ESalesManager と入力します。
    • Technology: Generic SQL を選択します(ODI バージョン 12.2 以降の場合は Microsoft SQL Server を選択)。
    • Logical Schema: ESalesManager と入力します。
    • Context: Global を選択します。
  3. 表示されるダイアログの Data Server 画面で、以下の情報を入力します。
    • Name: ESalesManager と入力します。
    • Driver List: Oracle JDBC Driver を選択します。
    • Driver: cdata.jdbc.esalesmanager.ESalesManagerDriver と入力します。
    • URL: 接続文字列を含む JDBC URL を入力します。

      e セールスマネージャー Remix に接続するには、User、Passowrd、URL、TenantId パラメータが必要です。

      • User:API を実行するためのログインユーザーのユーザーID。
      • Password:API を実行するためのログインユーザーのユーザーパスワード
      • URL:e-Sales Manager Remix エンドポイントへのURL。例:https://XXX.softbrain.co.jp
      • TenantId:e-Sales Manager Remix テナント名のTenantd。例:cdata

      組み込みの接続文字列デザイナー

      JDBC URL の作成には、e-Sales Manager JDBC Driver に組み込まれている接続文字列デザイナーをご利用ください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。

      java -jar cdata.jdbc.esalesmanager.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

      一般的な接続文字列は以下のとおりです。

      jdbc:esalesmanager:User=MyUsername;Password=MyPassword;URL=MyInstanceURL;TenantId=MyTenantId;
      
  4. Physical Schema 画面で、以下の情報を入力します。
    • Name: ドロップダウンメニューから選択します。
    • Database (Catalog): CData と入力します。
    • Owner (Schema): e-Sales Manager でスキーマを選択した場合は選択したスキーマを入力し、それ以外の場合は ESalesManager と入力します。
    • Database (Work Catalog): CData と入力します。
    • Owner (Work Schema): e-Sales Manager でスキーマを選択した場合は選択したスキーマを入力し、それ以外の場合は ESalesManager と入力します。
  5. 開いたモデルで Reverse Engineer をクリックして、e-Sales Manager テーブルのメタデータを取得します。

e-Sales Manager のデータの編集と保存

リバースエンジニアリングが完了すると、ODI でe-Sales Manager のデータを操作できるようになります。 e-Sales Manager のデータを編集・保存するには、Designer ナビゲーターで Models アコーディオンを展開し、テーブルを右クリックして Data をクリックします。Refresh をクリックするとデータの変更を取得できます。変更が完了したら Save Changes をクリックします。

ETL プロジェクトの作成

以下の手順に従って、e-Sales Manager からの ETL を作成します。ODI Getting Started VM に含まれるサンプルデータウェアハウスに Customer エンティティをロードします。

  1. SQL Developer を開き、Oracle データベースに接続します。Connections ペインでデータベースのノードを右クリックし、new SQL Worksheet をクリックします。

    または、SQLPlus を使用することもできます。コマンドプロンプトから以下を入力します。

    sqlplus / as sysdba
    
  2. 以下のクエリを入力して、ODI_DEMO スキーマにあるサンプルデータウェアハウスに新しいターゲットテーブルを作成します。以下のクエリでは、e-Sales Manager の Customer テーブルに対応するいくつかのカラムを定義しています。
    CREATE TABLE ODI_DEMO.TRG_CUSTOMER (ADDRESS NUMBER(20,0),Name VARCHAR2(255));
    
  3. ODI で Designer ナビゲーターの Models アコーディオンを展開し、ODI_DEMO フォルダ内の Sales Administration ノードをダブルクリックします。モデルエディターでモデルが開きます。
  4. Reverse Engineer をクリックします。TRG_CUSTOMER テーブルがモデルに追加されます。
  5. プロジェクト内の Mappings ノードを右クリックし、New Mapping をクリックします。マッピングの名前を入力し、Create Empty Dataset オプションのチェックを外します。Mapping Editor が表示されます。
  6. Sales Administration モデルから TRG_CUSTOMER テーブルをマッピングにドラッグします。
  7. e-Sales Manager モデルから Customer テーブルをマッピングにドラッグします。
  8. ソースのコネクタポイントをクリックし、ターゲットのコネクタポイントにドラッグします。Attribute Matching ダイアログが表示されます。この例では、デフォルトのオプションを使用します。ターゲットカラムのプロパティにターゲット式が表示されます。
  9. Mapping Editor の Physical タブを開き、TARGET_GROUP 内の CUSTOMER_AP をクリックします。
  10. CUSTOMER_AP のプロパティで、Loading Knowledge Module タブの LKM SQL to SQL (Built-In) を選択します。

マッピングを実行して、e-Sales Manager のデータを Oracle にロードできます。

はじめる準備はできましたか?

e-Sales Manager Remixi Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

e-Sales Manager Remix Icon e-Sales Manager Remix JDBC Driver お問い合わせ

商品、在庫、発送状況などのe-Sales Manager データを組み込んだ強力なJava アプリケーションを迅速に作成して配布できます。