データ連携と一言に言っても色々な方法があります。
このコラムでは、異なるシステム間のデータ連携を実現するには一般的にどのような方法があるかを紹介し、それらの特徴を比較し、問題点や課題についてご説明していきましょう。

 

データ連携の一般的な方法

まず従来最も多く採用されてきたのは、それぞれ異なるサーバやシステムに合わせて1対1でデータを同期・連携するための専用プログラムを自社で独自に用意する方法です。

1対1のデータ連携

シンプルで拡張性を求めない場合、低コストで作成可能であり、専用に作成するプログラムであるためそれぞれのシステムにあわせて最適な方式を選択し、機能を実装できるというメリットがあります。

次に、ETL(Extract/Transform/Load)ツールを使う方法があります。

ETLツールとは、システムに蓄積されたデータを抽出し、利用しやすい形式に変換・加工したのち、データウェアハウス等の最終ターゲットに書き込むツールです。

 

ETLツールでのデータ統合

ETLツールは「ファイル転送ツール」とも呼ばれる通り、データ転送及び変換・加工に特化しているため、大量データ転送や各種フォーマット変換に強みを発揮します。

もうひとつの方法として、データ連携ツール(EAI :Enterprise Application Integration )を使う方法があります。
こちらはn対nのデータ連携が一元管理できるため、複数システムが複雑に組み合わされるシステムではその煩雑さを解消できるメリットがあります。

 

EAIツール  N対Nで双方向のリアルタイム連携

かつてEAIツールは費用対効果の面で導入が難しいといわれていましたが、拡張性もあり、GUI開発環境を使って感覚的な操作でノンコーディングでのデータ連携プロセス(フロー)を容易に開発することができるようになったため、専門の技術者でなくても導入可能になってきています。またデータウェアハウス/データレイクなど一つのターゲットにデータを統合する、ETLツールが担っていた用途にも活用されはじめ、BIツールなどによる分析のためのデータ統合を、人手を介さずに自動化するソリューションとして利用されるようになりました。

また以前は、社内システム間のデータ連携のために利用されることが多かったのですが、現在ではさまざまなクラウドサービスが業務で利用されるようになり、クラウドサービスがWebサービスを基盤としたAPIをサポートするようになったため、オンプレミスのシステムとクラウドサービス間のデータ連携にも広く使われるようになってきています。

 

データ連携で起こる問題点とは

それぞれのデータ連携手法にはメリットばかりではなく、問題点も多く存在します。

独自に作成したプログラムによる1対1のデータ連携では、システムの組み合わせごとに実装が必要になり、システムの複雑さや規模によって、非効率かつ高コストになりかねず、また、連携プログラムの数が増えるにつれて乱立や分散が発生し、管理が困難になることもコストが増える原因となってしまいます。また連携の仕組みを理解しプログラムを開発した人が十分なドキュメントを残さず引き継ぎ資料も用意できていなかった場合、複雑な連携の仕組みそのものがブラックボックス化してしまい、その後のカスタマイズや改修が不可能になったり、障害時のトラブルシューティングができなくなるという属人化の課題もあります。

また、統合管理されていない仕組みであるため、連携プロセス(フロー)が正しく動作しているかをモニタリングする仕組みも個々に用意する必要があります。

ETLツールは、あくまで1対1、n対1のバッチ処理的な動作であり、n対nのリアルタイム連携には向いていないという問題点を抱えています。

EAIを使った場合、ETLツールと同様に初期導入自体に価格+導入工数などの初期費用がかかるため、小規模のシステムでは逆に高コストになってしまいます。導入後の保守費用についても同様のことが言えるでしょう。

しかし、データ連携の仕組みがクラウドサービス(iPaaS:Integration Platform as a Service)として提供され、より容易に利用できるようになっており、このデメリットも解消されつつあります。クラウド サービス間のデータ連携であれば、データ連携サーバをオンプレミスに配置することなく、クラウド上にあらかじめ用意されたデータ連携実行環境を利用できるので、運用開始までの時間を大幅に短縮することができます。

→ 定額で利用できるデータ連携クラウドサービスとは

また、データ連携を一元管理できるというメリットの反面、データ連携サーバが障害を起こしてしまうと、複数のシステムやサービスをまたがる業務処理がすべて止まってしまうというリスクを負うことになります。そのため、データ連携ツールを比較・選定する際には堅牢で耐障害性を備えたプラットフォームであるかを確認することが重要です。

→ データ連携サーバの可用性と拡張性

 

データ連携ツール(EAI)とは

データ連携ツールは、単に複数システム間のデータ同期をするだけにとどまりません。さまざまなシステムを連携して処理される一連の業務プロセスの自動化ツールであると言えます。

目的別に最適化されたシステム・サービスはそれぞれデータ構造が異なり、外部とのデータ入出力の仕組みや処理を起動するトリガー、システム間で受け渡すパラメータなど仕様が異なります。データ連携ツールにはこれらの違いを隠蔽する専用のアダプタが提供されているため、一つの共通プラットフォームの画面上で一覧表示されたデータ項目を線で結ぶだけでデータ交換の処理フローを定義することができます。

これらの定義された連携フロー一つ一つの処理が、サーバで統合管理されてることで、処理状況やログを集中管理・監視することが可能になることもデータ連携ツール導入の大きなメリットです。処理をモニターする機能がなければ、データ連携が正しく行われたか?を把握できず、連携対象システムでエラーが発生した場合の対応もできなくなります。1対1の連携プログラムを作成した場合、そのプログラム内に処理状況をチェックする仕組みをそれぞれ組み込む必要がありますが、サーバで統合管理することでこの問題を簡単に解決できます。

また、各システムはデータ連携(EAI)サーバを経由して疎結合されるので、一部のシステム・サービスを入れかえる際にその他の関連するシステムへ及ぶ影響が少なくなります。システムの入れ替えが容易なので、その時々に最適なサービスへと柔軟に変更することが可能になります。

マイクロサービスとのデータ連携ツール(EAI)の活用

データ連携ツールの活用シーンは、社内システム間のデータ連携から、取引先やユーザとのコンタクトポイントであるマーケットプレイス、ECサイトなど外部ソースとの連携にも広がっています。各種センサーデータを扱うIoT連携や、SNSやネット広告におけるマーケティングデータのビジネス活用がそれほど特殊なものではなく一般に利用されるようになったのは、各種のサービスがRESTやODataのようなWeb APIを公開するようになったためです。

APIで容易にサービス間連携ができることで、マイクロサービスといわれるような部品となる機能を自社開発することなく、API経由で「つないで」「利用する」ことで統合されたサービスを構築することが容易になりました。それぞれのマイクロサービス同士が利用し、利用されることでより早く多くのサービス利用者を獲得できるAPIエコノミーと言われるモデルが形成されています。より良い機能部品=マイクロサービスに入れ替えることでサービスの質や価値を高めることも容易にできるようになっています。

サービス間連携を1対1のプログラミングで実装することも可能ではありますが、サービス開発に柔軟性とスピードが求められている中で、データ連携サービスそのものがマイクロサービスの一部として利用されています。「データ連携機能」を開発するのではなく、すでにある優れたデータ連携サービスを使うことでこれからのサービス開発が加速されるでしょう。

ユーザー活用成功事例

トリドール
トリドールホールディングス
DXを支えるデータ連携プラットフォーム
会計処理と人事異動の時間を短縮
事例の詳細
mipox
Mipox
データ連携クラウドサービスを内製開発に利用
SAPとクラウドをつないで業務自動化
事例の詳細
学研
SAP ERPと新受注管理システムをMagic xpiで連携
受注処理の迅速化と「顧客満足」を達成
事例の詳細

お問合せ

Magic製品やサービスについて ご要望、ご質問をメッセージにご記入ください

“担当者からご連絡します”