SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

Web APIによるデータ連携デザインパターンとツール活用

APIがもたらす拡張されたデータ連携の価値

 データ連携の目的は、今も昔も不変です。「データを扱いやすいように一元管理する」「可用性を向上させる」「自動化(オートメーション)で効率化を進める」といった基本的なデータの利用価値を高める使い方と、「データやアプリケーションロジックを部品化、共通化することでアプリケーション開発・運用を効率化する」といった拡張された価値の大きく2つに分けて考えられます。

 これまでのRDBMS間のODBC、JDBC、ADO.NETといった標準的なデータ接続テクノロジーは主に自社内でのアプリケーション連携時に利用されてきました。例えば、MDM(マスターデータマネジメント)によるデータの一元管理や、EAI/ETLツールによるビジネスプロセスのオートメーション化です。ERPといった全社リソースの全体最適化とまではいかなくても、データはアプリケーション間で連携して使われるべきであるという考え方はエンタープライズアプリケーションのデザインとして定着しています(図4の青い部分)

図4 データ連携のもたらす価値
図4 データ連携のもたらす価値

 最近では、SaaSの導入が進みWeb APIを使ったデータ連携が可能となると、データ連携のメリットは自社内だけではなく、外部を巻き込んだエコシステムで語られることとなっています。自社では競争力の源泉となるコアビジネスの機能をアプリケーションとして実装し、付随する機能はAPI連携で外部から補完することでコアの価値と多様な付随機能を効率よく両立することができます。複数のアプリケーションのWeb APIを組み合わせてまったく新しいサービスを提供するマッシュアップも盛んになっています。このような「オープンイノベーション」を使った拡張的なサードパーティエコシステムが形成されています。これが「APIエコノミー」と呼ばれるものです。ここにはパソコンから利用するアプリケーションだけでなく、モバイルアプリケーション、センサーやスマートデバイスを用いたIoT、APIバンキングなどの決済手段、シェアドエコノミーなど幅広い製品やサービスがAPIを通じて繋げられ、新しい価値を生みだしています。

 データ連携の自社利用でも、API連携によるメリットが得られます。個々の従業員が自らの業務を効率化するのに、社内で利用されているさまざまなSaaSやGoogle Drive、Box、OneDriveといったクラウドストレージ内のファイル間のデータ同期を自ら行えるIFTTTやMicrosoft Flowなどのオートメーション化のサービスや、データのクレンジングやマッピングといったデータプレパレーションがノンプログラミングでできるセルフサービス型のETLツールの利用が拡大しています。これらは、非エンジニア(Citizen Developer)によるパーソナライズされたデータ利用と言えます。

 他方で、アーキテクチャでは、旧来のモノシリック(一枚岩)なシステムではなく、業務システム全体を小さなサービスをAPIで組み合わせることによってデザインし、変化に対応しやすいシステムを作り上げる「マイクロサービスアーキテクチャ」を実現できるようにもなりました。このようにアプリケーション内のデータベースやロジックの全部もしくは指定された部分を安全に公開しアプリケーション間での利用を実現するWeb APIによって、データ連携の可能性は大きく広がったと言えるでしょう。

実は進んでいないデータ連携

 しかし、このようなWeb APIによって拡張されたデータ連携のメリットを実感できない企業の方が多いのではないでしょうか? それどころか、導入した複数のSaaS間のデータ連携ができておらず、データの一元管理やオートメーションが後退してしまったという状況も多いように見受けられます。クラウドで提供されるSaaSは、時間をかけずに導入ができること、導入にコストがかからず課金が月額や使用量であることがメリットの一部です。短期導入やトライアルとしての部分導入を図った結果、顧客マスター、製品マスター、会計項目、人事マスターなどの本来一元化が図られるべき主要データすら連携せずに導入してしまうということが少なからず起こってしまいます。SaaSは基本的なデザインとして、それ単体で機能することを第一に作られているので、データ連携を導入前にあまり考えていなかったというのは不思議ではありません。また、オンプレで運用される帳票やBIツールからSaaSアプリケーションデータやNoSQLデータが抜け落ちているという悩みも聞かれます。

 なぜ、このようなことが起きてしまうのでしょうか?

次のページ
Web API利用の難しさ

この記事は参考になりましたか?

特集記事連載記事一覧

もっと読む

この記事の著者

桑島 義行(CData Software Japan合同会社)(クワジマ ヨシユキ)

CData Software Japan 合同会社 技術担当ディレクター キャリアを通じてデータマネジメント、データアナリティクス・DWH などのデータ活用を専門で扱うデータベースアーキテクト。国内のメーカー系システムインテグレータで15年以上勤務した後、現在は米国本社のデータ連携コンポーネントベ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/9760 2016/11/14 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー