はじめに
データベース間でデータ連携を行う際、マッピングを設定してデータを転送します。
本記事では、OracleとSQL Server間のデータ連携を例に、マッピング設定の方法を解説します。
「リモート(SDI WEBサービス経由)でのデータ連携でも、マッピング設定は必須です。ローカル環境と同様の手順でマッピングの設定を行います。
構成図
Source (Oracle)
スキーマ名:HR
テーブル名:EMP
PK | カラム名 | 型 |
---|---|---|
EMPID | NUMBER | |
EMPNAME | VARCHAR2 | |
DEPT_CODE | VARCHAR2 | |
BIRTHDAY | DATE |
Target (SQLServer)
スキーマ名:sales
テーブル名:社員マスタ
PK | カラム名 | 型 |
---|---|---|
社員コード | numeric | |
社員名 | nchar | |
部署コード | nchar | |
誕生日 | datetime |
設定
コネクション設定
Source DB、Target DB への接続を設定。
設定方法は下記の記事を参照:
https://qiita.com/RiCCT/items/787a41bb54277a3b26c2
ソースコネクション名 | ターゲットコネクション名 |
---|---|
HRMS_ORACLE |
SALES_SYSTEM__SQLSERVER |
マッピング設定
1 .「新規マッピング」ボタンをクリックしてマッピング設定画面を開きます。
2 . ソースコネクション、テーブル、ターゲットコネクション、テーブルを選択
No | 項目 | 説明 |
---|---|---|
1 | マッピング名 | マッピング名を入力、任意の名前設定できます。システムは名前の重複チェックしていないですが、管理上、ユニークの名前の設定をお勧めします。 |
2 | ソースコネクション | HRMS_ORACLEを選択 |
3 | ソーステーブル | HR.EMPを選択 |
4 | コネクションコネクション | SALES_SYSTEM__SQLSERVERを選択 |
5 | コネクションテーブル | sales.社員マスタを選択 |
6 | カラム一覧取得 |
カラム一覧取得 ボタンをクリックしてテーブル定義明細取得 |
3 . カラムのマッピングルールを設定
No | 項目 | 説明 |
---|---|---|
7 | ソースカラム | ターゲットのカラムに対してソースデータの対応のカラムを選択します。同じカラムが存在する場合デフォルト自動マッピングします。今回下記のように設定します。 EMPID -> 社員コード EMPNAME -> 社員名 BIRTHDAY -> 誕生日 |
8 | マッピング対象 | データ連携するかどうかを選択。今回部署コード以外のカラムをデータ連携します。 |
9 | 更新方式 |
Merge を選択。 更新方式についての詳細説明は下記の資料を参照: https://ja.sdi.ricct.com/userguide/mappingtarget/ |
4 . テスト実行
お勧め
マッピング実行前に、ソースとターゲットのテータ参照
ボタンをクリックして、データを確認した上実行します。マッピング成功の場合、もう一度ターゲットのデータを確認して、結果は期待通りかどうかを判断します。
No | 項目 | 説明 |
---|---|---|
10 | ステータス | 実行成功の場合、マッピングを保存して、設定完了。 エラーが発生した場合、詳細画面でエラー内容を確認した上対応します。 |
11 | 詳細アイコン | 詳細アイコンをクリックしてLOGの詳細参照できます。 |
5 . 保存
保存
ボタンをクリックして、マッピング設定を保存します。
定期的にデータ連携したい場合、スケジューラーを作成してマッピングを登録します。
スケジューラー設定につきまして、下記のページを参照してください。
https://ja.sdi.ricct.com/userguide/schedule/
以上です。
Simple Data Integrator (SDI) 実践入門