データ連携の現在・過去・未来
データ連携第2世代(EAIの登場)
第1世代においてアプリケーション間の疎結合は実現されたものの、お互いのデータフォーマットを理解し、必要に応じて変換する役割は依然としてアプリケーション側に残されました。
そこで、データ連携第2のイノベーション「EAI」が登場します。
EAIは、別名、データハブもしくはデータアダプタなどと呼ばれます。EAI自身がさまざまなアプリケーションと相互連携する機能を搭載することで、アプリケーションは連携する相手を意識する必要がなくなり、ハブもしくはアダプタ(EAI)との接続だけを確保すれば、後はEAI側がすべてを吸収してくれるというコンセプトのもとに市場へと提供されました。
1990年代当時、EAIはとても高価なソリューションでしたが、アプリケーション連携のスパゲティ状態を解消でき、ROI(Return On Investment:投資利益率)も高いと期待されていたために、導入する企業は後を絶ちませんでした。
しかし、いざEAIを本格的に導入するとなると、基本となるデータ連携機能は実装されているものの、変換テーブルやアダプタのカスタマイズが必要だったり、漢字コードや外字の変換の仕組みを新たに組み込まなければならないなど、実装レベルにおいては「万能ハブ」ではないことが分かってきました。
しかも、EAIベンダがそれぞれ独自の技術で連携の手法や開発ツールを採用していたため、カスタマイズや実装に手間とコストがかかり、EAIやアプリケーションのバージョンアップやシステムのライフサイクル管理が複雑になってしまうという新たな課題が露呈することになります。
その一方、無料や低コストで利用できるOSSのデータ連携用ミドルウェアも登場してきたことから、コスト負担が大きく、融通の利かないEAIは次第に敬遠されるようになってきました。
図2:データ連携におけるスパゲティ状態 |
データ連携第3世代(SOA時代の到来)
EAIのコンセプトは優れていたものの、今となって考えれば技術的には未完成のソリューションだったとも言えるかもしれません。その課題を克服するべく注目されるようになったのが、第3世代と呼んでいるSOA(Service Oriented Architecture:サービス指向アーキテクチャ)によるデータ連携の仕組みです。
SOAはその名の通り、アプリケーションをサービスレベルで連携させる技術で、一般的にはデータ連携だけを目的に導入されるものではありませんが、開発ツールやプラットフォームに依存せずにアプリケーション同士が直接会話できるということから、データ連携には打ってつけの手法でした。
データ連携を意識せずにアプリケーションの統合ができるというのが最大のメリットではありますが、EAIのようなデータ連携を共通化するツールは用意されていないので、個別連携が前提となります。そのため、連携するアプリケーションの組み合わせが増えてくると、やはりスパゲティと呼ばれる状態になってしまい、データ連携の管理や改編が煩雑になってしまうという第1世代の課題が再現されてしまいました。
しかも、SOAのアーキテクチャはレガシーと言われるこれまで利用されてきた企業システムとの互換性は確保されていません。そのため、Webシステムだけですべてのシステムをカバーできるのであれば問題はないのですが、レガシーシステムとWebシステムとの相互連携を実現しようとすると、新たにWebシステムとレガシーシステムを連携させる仕組みが必要となります。
またSOAを実装するための技術やフレームワークが確立されておらず、「どうやってSOAを導入していけばいいのか分からない」、「そもそもSOAが分からない」というSOA自体の根本的な問題が内在していたことから、データ連携の仕組みとして広く普及するのには至りませんでした。