[Analysis]

Web上に登場した3種類の“プラットフォーム”

2007/11/26

 マーク・アンドリーセン氏が2007年9月16日のブログエントリで、非常に興味深いことを書いている。Web上に登場した3種類の“プラットフォームについてだ。

 アンドリーセン氏のことを忘れてしまった読者、あるいはよく知らない若い読者のために氏の来歴を少し書いておくと、アンドリーセン氏は世界で初めて広く普及したWebブラウザ「Mosaic」(モザイク)を作ったことで知られている。1993年にネットスケープコミュニケーションズを共同で設立。1995年の同社IPO以後、ドットコムバブルまでの間は米TIME誌のカバーを飾ることもあった時代の寵児だった。

 アンドリーセン氏は、その後もいくつかのスタートアップで成功を重ね、2005年には参加者が自由にSNSサイトを構築できる一風変わったソーシャルネットワークサービスのプラットフォーム「Ning」を提供する同名のベンチャー企業を創業している。

3つのレベルの“プラットフォーム”

 昨今ネットワーク上の「プラットフォーム」が話題になることが多い。しかし、この言葉を巡って議論が錯綜しているとアンドリーセン氏は指摘する。そこで論点を整理し、近未来を見通す目的で彼が興奮気味に書いたのが「インターネットであなたが出会う3種類のプラットフォーム」(The three kinds of platforms you meet on the Internet)という文書だ(ちなみにこのブログエントリのタイトルは、作家ミッチ・アルボムのベストセラー『天国の五人』(The Five People You Meet in Heaven)をもじったもの)。正直なところ、ドットコムバブル崩壊後のアンドリーセン氏は、ネットスケープ時代ほど華やかな立場にないので、特に日本から見た氏の印象は薄い。しかし、このブログエントリを読めば、まだ36才の彼が第一戦で技術動向を見守りつつイノベーションを起こそうとしていることがよく分かる。

 “プラットフォーム”の定義として彼は、プログラミング可能であることを挙げる。「プログラムできるなら、それはプラットフォームだ。できないなら、違う」(アンドリーセン氏)。

 彼はインターネット上のプラットフォームを3つのレベルに分ける。

 「レベル1」はAPIを公開したWebサービス。例えばeBay、Flickr、del.icio.usなど、SOAPやRESTでアクセスできるもののこと。「レベル2」は“プラグイン”が可能なプラットフォーム。Facebookは、Facebook上に統合する形でサードパーティがアプリケーションを展開できるオープン戦略を採って注目を集めているが、アンドリーセン氏は、これをレベル2のプラットフォームの典型的な例として挙げる。それは歴史的にはPhotoshopやFirefoxなどクライアントPC上のプラグインと似た戦略だという。

 米国では、このFacebookの“プラットフォーム戦略”が世間の耳目を集めた。その結果、誰もが「プラットフォーム」という言葉を使うようになった、ということが、そもそもアンドリーセン氏がブログを書こうと思い立った背景にあるようだ。

 レベル1と異なり、レベル2ではアプリケーションを作成する開発者は、単にプラットフォームが提供するサービスを利用したり、データを引っ張り出すだけでない。レベル2向けのアプリケーションは、利用者からは、そのプラットフォームに統合された形で提供されているように見える。アンドリーセン氏は「Facebookプラットフォームのアプローチは、今後ほかの多くのWebサービスが提供するようになる膨大な数のプラグインAPIというものの先駆け的存在だと思う」と語る。開発者は今後、さまざまなWebサービスを外部から利用するのではなく、Webサービスに対して自分の作ったアプリケーションや機能を提供できるようになるだろうと予言している。

 その後、2007年11月にはFacebook対抗として米グーグルがオープンな標準API仕様「OpenSocial」を発表しているが、これもレベル2のプラットフォームだろう。

 レベル2のプラットフォームを利用する開発者には、レベル1に比べてゼロからすべてのサービスを構築する必要がないことや、即座に既存のユーザーベースに対してサービスを提供できるというメリットがある。

 ちなみに、アンドリーセン氏はネットスケープコミュニケーションズがAOLに買収された後、短期間だがAOLに在籍していた。そのころのことを振り返り、レベル2プラットフォームの提供は「1990年代半ばにAOLがやるべきだったことだ」と言っている。

「クラウド上」で開発が当たり前の世界に

 さて、アンドリーセン氏が興奮気味に書いていて、読んだ記者も大いに刺激された「レベル3」のプラットフォームの話だ。それは、開発者が書いたコードがそのまま走る環境を、ネットワーク上で提供するプラットフォームのことだ。

 レベル1もレベル2も、作成したアプリケーションが実際に稼働するサーバは開発者自身が用意しなくてはならない。それに対してレベル3のプラットフォームというのは、ランタイムやライブラリまで含め、実行環境全体を提供するインターネットサービスを指す。開発者はコードをアップロードするだけでよく、物理的なサーバやネットワーク機器、OSやライブラリなどといったものに煩わされることがない。その実行環境というのは、最近“クラウド”(cloud)と呼ばれることが多い、多数のサーバで実現された分散コンピューティングシステムの上で提供されることになる。

 今後数年で「Webブラウザ上で開発」ではなく「クラウド上で開発」という世代交代が起こるだろうとアンドリーセン氏は予言している。ちょうど現在、大学を出たばかりの若い開発者たちがWebブラウザで使えないサービスを設計する理由が分からないのと同様に、今後数年で出てくる若い開発者たちはクラウド以外をターゲットにアプリケーションを書くなど考えられなくなるだろうという指摘だ。未来のプラットフォームというのは、開発環境やプログラミング言語のように製品として購入したりダウンロードするものではなく、ネットワーク上に存在するサービスになるのだという。

 レベル3プラットフォームの例として、アンドリーセン氏は、Salesforce.comやSecond Life、AmazonのEC2(Elastic Compute Cloud)やS3(Simple Storage Service)、FPS(Flexible Payment Service)といったサービスを挙げている。それぞれジャンルや方向性は異なるものの、ユーザーが作成したコードが、そのままオンラインで走る環境を提供している点で一致している。

レベル3プラットフォームで参入障壁が劇的に下がる

 インターネットで存在感を持つ規模でサービスを提供するには、インフラ整備に膨大なコストがかかる。サービスが成長してユーザーが増えるに従ってスケールアウトするには、高い技術力や投資が必要だからだ。これをアンドリーセン氏は端的に「成功が息の根を止める」(Success kills.)と表現している。急成長するサービスのインフラを、スタートアップ企業が維持するのは簡単ではない。

 8月末にテストが開始され、現在もプライベートベータサービスとして提供されているAmazon EC2は、アンドリーセン氏自身がいうとおりレベル3プラットフォームとは若干ニュアンスが異なるが、それでもレベル3プラットフォーム的な衝撃的なサービスだ。ユーザーはAmazonが過去10年以上にわたって技術開発を行ってきた堅牢な分散コンピューティング環境の上に、ユーザーが設定するオープンソースのOS環境を立ち上げられる。現在、米レッドハットとの協業により、Red Hat Enterprise Linuxのディスクイメージを作成して、仮想的なサーバ上でプログラミングやサービス提供が行うこともできるようになっている。基本料金は月額19ドル。OSの1インスタンスごとに1時間0.21ドル。利用したメモリやストレージ、ネットワーク帯域に対してだけ課金される。このため「差別化要因のない力業の仕事」(米Amazonのジェフ・ベゾスCEO)から解放されるとWebアプリケーション開発者の多くが歓迎している。ジェフ・ベゾス氏によれば、スタートアップ企業が費やす労力やコストの70%は、サーバ選定やインフラのシステム設計に費やされるという。これに対して、Amazon EC2なら必要な分だけサーバのインスタンスを増やすだけでよく、インフラ設計の技術的困難さや、投資戦略の難しさがなくなる。

 レベル3プラットフォームは、アイデアと技術力があるスタートアップ企業のWebサービスへの参入障壁を劇的に下げる。

Amazon Web Servicesの衝撃

 アマゾンは一般にはWeb上の書店かオンラインショップと考えられているかもしれない。ユーザーのプロファイルを抑えたマーケティングや、世界中に張り巡らせた効率的なロジスティクスこそが彼らのコア・コンピテンスだと見る人もいるだろう。しかし、アマゾンが次々と発表している「Amazon Web Services」(AWS)が示すのは、アンドリーセン氏がいうレベル3プラットフォームを提供できる数少ない企業として、アマゾンが他社をリードしているという事実だ。

 米アマゾンCTOのワーナー・ヴォーゲルス(Werner Vogels)氏は自身のブログのなかで、同社の分散システム「Dyanamo」の技術的概要を明かしている。公開された文書によれば、アマゾンは年末のプレゼントシーズンのピーク時には数千万人の顧客を数万台のサーバでさばいているという。常時、数百万セッションを維持し、たった1日で300万ユーザーが何かを購入する。1つのWebページを表示するのに平均して150程度の関連サービスがSOAベースの分散システム上で呼ばれるが、一定時間以内にページを表示するために、個々のサービスは数百ミリ秒以内にレスポンスを返す仕様になっている。

 この巨大で実用的なシステムを実現するために、アマゾンは長年考察と技術開発投資を続けてきた。同社のストレージサービス「Amazon S3」のベースともなっているというDynamoでは、従来のRDBMSで常識だった「データの完全な一貫性」を保証することよりも「いつでも必ずデータを書き込める」というレスポンスを優先したアプローチを採用している。システム全体でデータの一貫性を完全に保証しようとすると、ある一定以上の規模やパーティションで分けられたネットワークにはスケールしなくなる。代わりに一貫性を少し犠牲にすることで、Dynamoでは可用性を大幅に上げているという。これは、いつでもカートに商品を入れられるようにという同社サービスの特性から来る要請というが、地球規模のクラウド・コンピューティングでは今後広く使われていく手法なのかもしれない。

 ヴォーゲルス氏はDynamoの特徴を「zero-hop DHT」(ホップ数ゼロの分散ハッシュテーブル)とも述べている。DynamoではFreenetやGnutellaのような古いP2Pネットワークと異なり、あらかじめ参加しているピアが分かっている「構造化されたP2P」を使っている。すべてのピアは完全なハッシュデータを持っていて、必要なサービスやデータを提供するピアに対して、他のピアを経由することなくダイレクトにアクセスできる。そのため、実行速度はネットワーク規模に無関係に一定以下に抑えられるのだという。

 こうした高度なアルゴリズムやアイデアは、アカデミズムの世界でも多く議論されているが、実際に稼働しているシステムを持つのがアマゾンの強みだろう。

いずれグーグルもウェブOSを提供か

 最近では、クラウド・コンピューティングに必要となる分散ファイルシステムまたは分散データベースシステムを「ウェブOS」と呼ぶことが増えてきた。Webアプリケーションの背後にあるクラウド・コンピュータのファイルシステムやアプリケーションの実行プラットフォームを提供する基本ソフトウェア層だから「ウェブのオペレーティング・システム」というわけだ。現在のところアマゾンは、ウェブOSを自社で使うだけでなく外部にも提供する、ほとんど唯一の企業だ。

 念のために注意を喚起しておくと、ここでウェブOSと呼んでいるものは、WebブラウザをクライアントPCの作業環境にしてしまうという従来からある「Web OS」とはまったく別物だ。一般に「OS」といったときに思い浮かぶものともかけ離れている。だからウェブOSという呼び方に違和感を感じる人もいるかもしれない。しかし、そうした違和感は「1台のコンピュータ+ソフトウェア」というPCのような現在のコンピューティングモデルが念頭にあるから出てくるに過ぎない。時代が変わろうとしているのだから、OSという語義がずれてくるのも当たり前である。

 ジェフ・ベゾス氏が踏み出した、ウェブOSを提供するコンピュータ企業へのアマゾンの転身という中期的なビジョンに対しては、あまりに大きな舵取りなので、特に金融系の人々から疑問視する反応も寄せられているようだ。その気になれば同様のサービスをすぐにでも打ち出せるはずのグーグルも、彼らのSaaS型アプリケーションの“プラットフォーム”であるクラウドを開発者にサービスとして開放していない。

 しかし、アンドリーセン氏が予言するように、「長い目で見れば、すべての信頼できるネット大企業はレベル3プラットフォームを提供するようになると思う」というのが正しいとすれば、グーグルも遅かれ早かれウェブOSを提供するようになるだろう。

 国内からもウェブOSへの挑戦が出てきた。週末に行われた楽天のテクノロジーカンファレンスで、Ruby言語の開発者で楽天技術研究所フェローのまつもとゆきひろ氏が言及した大規模分散処理基盤「Roma」(ローマ)と「Fairy」(フェアリー)も、こうしたウェブOSに必要な要素技術だと見ることができるだろう(参考記事:大規模分散処理向けの国産“ウェブOS”をRubyで開発中)。

レベル3上で驚異的な進化速度が実現する

 レベル3プラットフォームはレベル1、2に比べてインフラコストが必要最小限に抑えられることが利用者にとってのメリットだが、アンドリーセン氏の予言は、「実は、それよりもっといいことがある」と続く。

 もしオープンソースのエコシステムをプラットフォーム上に実現してユーザーが自由にコードを共有することになれば、「アプリケーション開発の進化速度は驚異的なものになるだろう」(アンドリーセン氏)という。これまでにもオープンソースコミュニティでは、ネットワーク上でコードを共有してきたが、コードの入手や変更の手間はレベル3プラットフォームとは比べようもない。レベル3プラットフォーム上では、コードのクローンを用意して変更を加えることが、かつてなかったほどの容易さになる。

 アンドリーセン氏自身は書いてないが、ベンチャー企業の「Bungee Connect」が、この点で注目すべきサービスを展開している。Bungee ConnectはオンラインでWebアプリケーションを開発して、ディプロイメントまでできるサービスだ。Webブラウザ上にGUIの開発環境が用意されており、独自の開発言語とAjaxフレームワークを使ってアプリケーションを作成できる。他社のWebサービスをラップして、SOAPで公開されているAPIをオブジェクトとして扱うライブラリなどを用意するなど、いかにもWeb時代の開発環境だ。

 アンドリーセン氏は、こうしたプラットフォームではユーザー間でコード売買ができる市場を作り出すことも可能だろうと指摘している。「こうしたプラットフォーム上で、どれほどの開発が行われるか、その可能性は無限だ」(アンドリーセン氏)。

 「プラットフォーム」と呼ぶのか「ウェブOS」と呼ぶのか、あるいは「クラウド・コンピューティング」と呼ぶのか、呼び方は定まらない。SaaSに倣って「PaaS」(Platform as a Service)や「HaaS」(Hardware as a Service)などという呼び方もある。呼称はさまざまだし、その定義も人によって少しずつズレている。しかし、日に日にオンライン側に移行しつつあるコンピューティング環境の変化が、ここに来てまた1つの転回点にさしかかっていることだけは間違いないと思う。

(@IT 西村賢)

情報をお寄せください:

アイティメディアの提供サービス

キャリアアップ


- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る
ソリューションFLASH

「ITmedia マーケティング」新着記事

パイプドビッツなど3社、製薬企業向けマーケティングオートメーションパッケージ「BtoD」が提供開始
パイプドビッツは、メディコムとトライベック・ストラテジーの2社と共同で、製薬企業向け...

EC・通販の広告クリエイティブは「製品・サービスを手に取ってもらう」ことに割り切る
豊富な実務知見に基づき、EC・通販で成功する方法について解き明かしていく本シリーズ。...

ブレインパッド、DMP「Rtoaster」のメジャーバージョンアップを発表
ブレインパッドは、DMP「Rtoaster」のメジャーバージョンアップを発表した。