Windowsというパソコン用OSを軸にIT業界を席巻したマイクロソフトを間近に見てきた年配の人たちにとって、「Google Chrome OS」はWindowsに対抗してグーグルが肝いりで発表した「Google OS」に見えるかもしれない。しかし、はっきり言わせていただきたい。その見方は間違っている。

 OSを「アプリケーションが稼働するのに必要な機能を提供する基本ソフトウエア」とすれば、グーグルにとって最も重要なそれは2008年4月に提供開始した「Google App Engine」である。マイクロソフトの「Windows」に取って代わるためにグーグルが提供するOSを「Google OS」と名付けるなら、それはGoogle App Engineを指すのである。Chrome OSは、Google App Engineの補完ツールに過ぎない。

 では我々は、Chrome OSをどのように受け止めるべきだろうか。グーグルがChrome OSに込めたメッセージを解き明かしたい。

グーグルのモットーは「スケールする」

 グーグルの社是(モットー)は「Don't be evil(邪悪になるな)」だと言われている。だが、もう一つ重要なモットーがある。それは「スケールする」ということだ。グーグルのエンジニアは、プログラムを開発するに当たって、そのプログラムがスケールするかどうかを最優先している。「スケールする」というのは、サーバーの台数を増やすスケールアウトの手法によってプログラムの処理性能を向上することである。大量のユーザーがサイトに押し寄せたときでも安定して処理を継続できるか、人類が扱ったことのないような膨大な情報であっても低コストで処理できるか、が大事なのである。

 グーグルが提供する「Gmail」や「Googleマップ」は、何も「Webブラウザで使えるから」「無料で使えるから」人気があるのではない。パソコンで利用する同種のアプリケーションよりも高速に動作するから支持されているのだ。Gmailはパソコンで動作するメールクライアントより検索が圧倒的に高速だし、Googleマップに相当する地図ソフトをパソコン単体で動作させるのは容量的に不可能だ。

 GmailやGoogleマップが高速で動作するのは、スケールするように開発されているからだ。プログラムはすべて「数百万台単位」とうわさされる大量のサーバーで並列実行される。だから高速なのである。アプリケーションを容易にスケールするために、「Google File System」というファイルシステムや、「BigTable」と呼ぶ分散データベース、さらにはサーバーなどのハードウエアまで自前で開発した。

 基盤ソフトウエアだけでなく、アプリケーションのエンジニアも、スケールするか否かを開発の判断基準にしている。例えば平面座標を処理するにしても、グーグルでは2次元の座標(図のa)ではなく、1次元の座標(図のb)を使用する。1次元の座標の方が計算量が少なく、プログラムがスケールしやすいからだ。

図●スケールする座標とは?
図●スケールする座標とは?