【2/17】今年は「濃厚」技術トーク!@ITメールセミナー スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷


いまさら聞けないリッチクライアント技術(10)

いまさら聞けない「マッシュアップ」超入門


江原顕雄
2008/3/13


Web 2.0時代の産物「マッシュアップ」

- PR -

 最近はやや落ち着いてきましたが、「Web 2.0」の登場とブームはネットサービスに大きな影響を与えました。Web 2.0とは、特定の意味を表す単語ではなく、さまざまなサービスや現象をまとめて表したものです。Web 2.0の用語として、ロングテール集合知フォークソノミーSNS(ソーシャルネットワークサービス)…… などなどが登場しました。

 そのWeb 2.0のキーワードの1つとして「マッシュアップ」があります。今回はこのマッシュアップについて見ていましょう。

もともとは音楽用語で「混ぜ合わせる」という意味

 「マッシュアップ」(Mash Up)という単語は「混ぜ合わせる」という意味で、もともとは音楽用語です。いろいろな曲を混ぜ合わせて(マッシュアップして)、違う曲にしてしまう手法のことです。

 転じて、Web上で使われる「マッシュアップ」は「2つ以上のWebサービスWeb API)を利用して混ぜ合わせて新しいサービスを生み出す」ことを指します。

編集部注Web APIについて詳しく知りたい読者は、記事「プログラマならWeb APIという巨人の力を使っちゃえ!」をご参照ください
図1 マッシュアップの概念図
図1 マッシュアップの概念図

マッシュアップの例

 百聞は一見にしかず! ということで、実際にマッシュアップされているサイトの例として「Weather Bonk」を見てみましょう。

図2 「Weather Bonk」のページ
図2 「Weather Bonk」のページ

 アクセスをすると、Googleマップ(Google Maps)の上に天気予報のデータが掲載されています。どの場所がどんな天気なのか直感的に分かるサービスですね。このサイトは地図のデータをGoogleマップから、天気の情報を提供しているサイトの2つの機能を使ってサービスを提供しています。

図3 「Weather Bonk」におけるマッシュアップの概念図
図3 「Weather Bonk」におけるマッシュアップの概念図

 もし、地図データや天気情報を何もないところから自分で作成しようとすると、膨大な時間とお金が必要です。しかし、複数のWebサービスをマッシュアップすることによって、手軽にお金を掛けずにサービスを提供できるのです。

マッシュアップを支える2つの技術

 Googleのサービスを利用したマッシュアップの例を取り上げました。が、ここではどのようにしてGoogleのサービスを利用しているのでしょうか? キーワードとなるのが「Web API」です。

 例えば、「Googleの検索 API」を利用すれば、簡単にGoogleの検索機能だけを利用できますし、AmazonのAPIを利用すれば、Amazonで取り扱っている商品のデータベースを簡単に使うことができます。いろいろな企業がWeb APIをリリースしており、その数は増える一方です。

 XMLもマッシュアップを支えるための重要な要素の1つです。Web APIは検索・編集・加工といった「機能」面の働きをしていますが、Web APIで提供されるデータフォーマットとして主にXMLが利用されています。

 XMLで提供されているデータは加工や編集がとても手軽にできるのが特徴です。なので、「A」というWeb APIから得たXMLデータを「B」というWeb APIで利用する…… といった使い方ができるのです。もし、それぞれが勝手なフォーマットでデータを提供していたら、Web API間でデータをやりとりするのもとても大変な作業になってしまいます。

実際にWeb APIを体験してみよう

 では、実際にWeb APIを体験してみましょう。例として、Yahooの検索APIを利用します。手順としては調べたい単語をYahoo APIにアクセスをして結果を得るといった形になります。

 Web APIに問い合わせをする方法にはいろいろありますが、今回はWebブラウザのURLを使って利用します。Webブラウザのアドレス欄に以下の文字列を入力します。

http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch?appid=Yahoo
Demo&query=@IT

図4 Internet ExplorerにURLを入力して実行!
図4 Internet ExplorerにURLを入力して実行!

 すると、Yahoo!で「@IT」を検索した結果が、図5の画面のようにXML形式で送り返されてきます。

図5 実行した結果、取得したXML形式の情報
図5 実行した結果、取得したXML形式の情報

 このままではとても見にくいですが、このXMLデータを使って、違うWeb APIで編集・加工して、マッシュアップを行うのです。

マッシュアップのメリット/デメリットとは?

 マッシュアップには次のような多くの利点が挙げられます。

  • 開発するトータルコスト(開発環境・手間・時間)が安く済む
  • アイデアさえあれば、手軽に始めることができる
  • 機能の追加・削除が手軽に行える

 一方で、デメリットも存在します。それは、以下のことです。

 これは、最も大きな弱点といえます。

 また、Web APIのサービスによっては1分間に何回までの利用、といった使用の制限もあるので、利用する際に規約をしっかりとチェックしておかなければなりません。

図6 Web APIの規約の例
図6 Web APIの規約の例

 次のページでは、Web APIやマッシュアップの例をいくつか紹介します。

  1-2-3

 INDEX
いまさら聞けないリッチクライアント技術(10) 
いまさら聞けない「マッシュアップ」超入門
Page1
Web 2.0時代の産物「マッシュアップ」
もともとは音楽用語で「混ぜ合わせる」という意味
実際にWeb APIを体験してみよう
マッシュアップのメリット/デメリットとは?
  Page2
Web APIにはどんなものがあるの?
マッシュアップの例をいくつか見てみよう
  Page3
マッシュアップはツールもオンライン
「マッシュアップ」という言葉



リッチクライアント&帳票 全記事一覧へ

ホワイトペーパーTechTargetジャパン

リッチクライアント & 帳票 フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  企業の仮想化に足りない“発想”とは?
仮想化運用管理のキモは意外なところに!

New!
  操作もマニュアルも分かりやすい!
ユーザー視点で開発されたPC管理ツール

New!
  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  セキュリティを知り尽くす上野氏が登壇!
@ITメールソリューションLive! in Tokyo

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  世界に通用するストレージの作り方とは?
製品に込めた思いを富士通の開発者に聞く

  OSSで手間も時間も、障害も減った――
「マピオンの事例」オープンソース活用法

  「ノートPCの持ち出し禁止」で大丈夫?
情報漏えいを防ぐ管理手法とインフラは?

  1日の処理を1秒に――MySQLの達人が語る
「コスト削減」できるチューニング

  ドキュメント作成を自動化して、SEの作業
効率を大幅アップ! Visio 2007の魅力

  急速に広がるHyper-Vでのサーバ仮想化
そのベストプラクティスをデルが解説

  @IT主催セミナーで語られた、「担当者に
求められるセキュリティ対策」をレポート

  @IT「Windows 7」 特設サイトオープン!
最新情報・移行ノウハウを公開しています