TOP業務システム> マッピングツールでは解消できないセマンティクスの違い
SOA/ESB
SOA/ESBの真の姿とは

第4回:ESBにおけるデータ変換(後編)

著者:Fiorano Software  青島 茂   2007/9/3
前のページ  1  2  3  次のページ
マッピングツールでは解消できないセマンティクスの違い

   さて、アプリケーション統合におけるデータの違いに関する最大の問題は、今までに説明してきたXML間のマッピングツールによるデータ変換やシンタックス変換だけでは解消できない、セマンティクス上のやっかいな相違が存在することです。

   このセマンティクス上の問題には多種多様なものがあり、どこまで対処可能かはESB製品やベンダーの考え方によっても異なります。またESBなどのミドルウェアの範疇の外で、ITシステム全体を通じたデータアーキテクチャとして解決すべき問題もあります。

   では実際に、いくつかの例をあげてみましょう。

コード体系の相違

   例えば、図2のようなIDや製品番号のデータ値のセマンティクス変換は、両方のアプリケーションが同じコード体系で稼動しているという大前提のもとで、はじめて可能なものとなります。

XML変換(再掲)
図2:XML変換(再掲)
(画像をクリックすると別ウィンドウに拡大図を表示します)

   コード体系の異なるアプリケーションに、顧客IDや製品番号などのコード化されたデータを送っても無意味です。しかしながら、SOAではコード体系を共有しない既存アプリケーションや取引先企業のアプリケーションとも連携することが求められます。このあたりが、コード体系も事前にきちんと定義していた従来のEDIによる取引先連携ともっとも異なる点です。

   コード体系の異なるアプリケーションを統合するためには、相手側のコード体系に合うようコード変換を行ったり、顧客マスターを参照して顧客IDコードを氏名などのコード化されていないデータに変換してから送信するといった処置が必要になります。

   具体的にはデータ変換プロセスの一環として、マスターデータを収めたデータベースへのアクセスやコード変換を行うアプリケーションの呼び出しなどの機能をESBに組み込めるようにすることです。

マスターデータの参照、コード変換アプリケーションの呼び出し
図3:マスターデータの参照、コード変換アプリケーションの呼び出し
(画像をクリックすると別ウィンドウに拡大図を表示します)


セマンティクス上のデータの粒度(大きさ)の違い

   「粒度」というあやふやな言葉を持ち出してしまいましたが、アプリケーション間ではその処理対象の大きさが異なるケースがあります。


例1:注文伝票の明細行

   1枚の注文伝票に明細行を10行まで載せることが許されているアプリケーションでは、10種類の製品の注文を1枚の伝票で処理することができます。

   一方、1枚の伝票で1製品の注文しか扱えないアプリケーションでは、10明細行の伝票を処理できません。

   この2つのアプリケーションを統合する場合、伝票形式の違いをESBで吸収する必要が生じますが、XSLTによるXML変換では対処できません。解消法の1つは、図4のようにESB上にデータの分割機能を持たせることです。XMLデータの分割としたのは、XML処理の関連技術を使えるので扱いやすいものとなるからです。

データの分割
図4:データの分割
(画像をクリックすると別ウィンドウに拡大図を表示します)


例2:ESBでは変換不可能なケース

   ある企業の営業部門では、CRMを用いて顧客企業の管理をしていたとします。営業マンが顧客企業からの注文を受けると、CRMにその注文を登録します。きめ細かなサービスを顧客に提供するため、注文は顧客企業の部門単位で受け付けていたとします。

   一方で顧客への請求書の発行は、経理部の別のアプリケーションが担っています。この請求書発行アプリケーションでは、顧客は企業単位で扱っており、顧客企業の部門別に請求書を発行することができません。

   このような状況でCRMと請求書発行アプリケーションを統合し、注文受付から請求書発行までの処理を自動化しようとする場合、どのようにしたらよいでしょう。明らかにこれは、ESBなどのミドルウェアの範疇を超えた問題です。

   顧客を企業単位で捉えるか、それとも顧客企業の部門単位で捉えるのか、これはまさにITシステムを離れて決定すべき業務上の問題であり、またそれに基づくデータアーキテクチャの問題です。

前のページ  1  2  3  次のページ


Fiorano Software, Inc. 日本オフィス ジャパン オペレーション マネージャ 青島 茂
著者プロフィール
Fiorano Software, Inc.
日本オフィス ジャパン オペレーション マネージャ
青島 茂
SOA/ESBの分野に2003年1月からたずさわる。2005年3月にFiorano Softwareの日本オフィスを開設し、現在SOA/ESB製品の国内市場への普及に専心している。


INDEX
第4回:ESBにおけるデータ変換(後編)
  ESBに求められるデータの違いを吸収する機能
マッピングツールでは解消できないセマンティクスの違い
  ESBに求められるデータ変換機能のまとめ