データベース資産を子子孫孫に引き継ぐ「DB2-Oracle DB連携」
このエントリーをはてなブックマークに追加 mixiチェック

時代と共にシステムは変わっても…データベースは不朽の資産

メインフレームやオフコンから、UNIXやWindowsによるクライアント・サーバーシステムへ。クライアント・サーバーシステムから、Webシステムへ。さらには、クラウドへ。時代の流れと共にテクノロジーは進化し、それに伴って企業情報システムの実現形態も変わってきました。

革新的なITを積極的に採用してシステムを改良し続けることは、ビジネス環境の変化をとらえ、いち早く事業に反映していくうえで避けては通れない道です。しかし、システムの実現形態がどれだけ変わっても、次世代の次世代、その次世代になっても変わらない不朽の資産として生かしていくべきものがITにはあります。それがデータベース資産です。

データベース資産は企業が積み上げてきたビジネスの結晶であり、将来を見通しながらビジネスを展開していくうえでの自社特有の“武器”でもあります。そのため、例えば自社開発のシステムをクラウドコンピューティングに切り替える場合、サーバーをはじめとする古いITリソースは不要になりますが、データはクラウドに移行して価値を受け継ぐ。レガシーマイグレーションの際も、メインフレームやオフコンからオープン系システムの環境にデータを引き継ぐ。

このように既存システムのデータベースから新システムのデータベースへ、データを子子孫孫に引き継ぐ仕組みを持つことは、データベース資産の価値を将来にわたって高め続けることにもつながります。

実践 Step by Step

データベース資産をどのように引き継いでいくか、Step by Stepで見ていきましょう。ここでは当社のASTERIA WARPを用いて、いっさいプログラムを書かずにDB2/IBM iとORACLEを3ステップで接続する手順の概略を紹介します。




接続対象となる各RDBシステムのJDBCドライバーを[ASTERIA WARPのインストールディレクトリ]/jre/lib/extフォルダーに格納し、ASTERIA WARPを再起動します。

続いて、ブラウザーに設定画面を表示し、RDBへの接続情報を登録します。具体的には、[設定]タブから[新規]を選択して、[接続名]や[データベースタイプ]などの基本情報を登録します。右の画面はDB2/IBMiの設定例です。ORACLEについても同じように必要な情報を登録します。

DB2/IBMiの設定画面例

情報を登録したら[システムに新規作成]をクリック。最後に[Test]ボタンを押して正常に接続情報が表示されれば、ASTERIA WARPから利用可能となります。

Step2では実際にフローを作成します。最初にASTERIA Flowデザイナーを実行して[ファイル]メニューから[サーバーを追加]を選択。ログインダイアログで[サーバー名][ユーザー名][パスワード]を指定し、OKをクリックします。

次に[プロジェクト作成]ダイアログを開いて、[プロジェクト名][フロー名]を指定。フローテンプレートとして[新規フロー]を選んでOKをクリックする。そうするとスタートコンポーネントだけが配置されたフローができます。

続いて、[コネクション]ペイン(サーバーペインの下方)のコネクション/RDBをダブルクリックします。すると、Step 1で登録したコネクションがリストされるので、接続するRDBをフローに配置します。

例えば[DB2DB]をクリックしてフロー上の任意の場所にドラッグ&ドロップすると、RDB Get / RDB Diff / RDB Put / SQL Callの選択パネルが表示されますので、RDB Getを選択します。その後、アイコンパレットの[マッパー]アイコンをクリックして、フロー上の任意の場所に置きます。[ORACLEDB]についても同様にフロー上に配置しますが、こちらはRDB Get ではなく、RDB Putを選択しておきます。

DB2DBをフローに配置する画面の例

最後にアイコンパレットから[終了]アイコンをクリックし、フロー上の任意の場所に配置したら、DB2とORACLEを連携させるフローの基本形の完成です。

どのテーブルを連携させるのか、Step3で連携対象となる各テーブルのフィールドの連結定義をしたら設定はひとまず完了です。

まずは入力側の設定です。RDB GetコンポーネントをダブルクリックするとSQLビルダーが立ち上がるので、連携元となるテーブルを選択して上部中央のペインにドラッグ&ドロップ。読み込みたいフィールドにチェックを入れ、必要に応じて抽出条件やJoin設定、ソート条件を指定します。ここで[SELECTテスト]ボタンをクリックすると、自動作成したSQL文をテスト実行しますので、目的のレコードが取得できていることを確認してOKボタンを押します。

SQLビルダーの画面例

次に出力側の設定をします。RDB Putコンポーネントをダブルクリックして出力対象とするテーブルを選択。出力したいフィールドをチェックしてからOKボタンをクリックします。

最後に、入力側と出力側のフィールドを関連付けるマッパーコンポーネントをダブルクリックします。入力フィールドと出力フィールドがそれぞれ左右に並んだマッピング編集画面が表示されるので、関連付けるフィールドを左右に結線します。このとき、データの抽出やフォーマット変更、演算など必要に応じて結線の途中に関数アイコンを配置し、必要な処理を定義します。

マッピング編集画面の例

ここまでの設定を終えて[ファイル]メニューから[保存]を選択すると、フローを保存すると同時にコンパイル処理が行われます。画面下端のログペインにコンパイルエラーが無いことを確認しておきます。

以上で設定は終わりです。締めくくりにフローを実行して、DB2/IBM iとORACLEを連携させてみましょう。なお、フローを定期的に実行したい場合、スケジュールを登録することができます。[実行]メニューから[実行設定]を選択し、設定したい手段を選択してください。

▲UP

ページトップへ