[Analysis]

見えるグーグル、見えないグーグル

2008/06/02

google.gif

 大ざっぱに言って、グーグルには2つの側面がある。見えるグーグルと、見えないグーグルだ。「見えない」は言い過ぎでも、グーグルの中には、普通に外から眺めているだけでは見えてこない、エッジな分散コンピューティングの世界が広がっている。

 検索やメール、カレンダーなどは外から見えている分かりやすいグーグルだ。逆にこうしたサービスを支えるインフラ技術は、かなり一生懸命見る気にならないと、見えてこない。

 ある技術系イベントの席で、たまたま隣になったグーグルの技術者が、私にこう言った。「アプリはあんまりやらないんですよ。画面とか、面倒くさいでしょ。グーグルドキュメントとか別に消えていいって感じ。インフラに興味があるんです。OS? OSなんて、どうでもいいし」。

 変わった人だなという印象を受けた。今の時代はインフラよりもサービスに華がある。フロンティアが広がっているのもサービスの分野だ。そう思っていた。しかし、それは記者の勝手な思い込みに過ぎなかった。

 最近、『Googleを支える技術――巨大システムの内側の世界』(西田圭介、技術評論社)を読んで、この考えは180度変わった。彼が言っていたアプリケーション(サービス)よりインフラがおもしろいという発言に共感を覚えるようになったのだ。グーグルでのインフラ開発は、極めてエキサイティングなものに違いない。

 グーグルのインフラ技術は、本当のところ、内部の人間にしか分からないことだが、パブリックになっている論文や統計データ、グーグルの関係者の発言からでも、かなりのことが分かる。そのことは記者も分かっていたし、実際にMapReduceやGFSに関する論文はプリントアウトして持ち歩いていたこともある。しかし、公開されている論文数は多く、テーマも専門的で多岐にわたるため、とても記者ごときに読み通せるものではなかった。

 そうした論文を読み込み、公になっている情報をつぶさに拾い上げてグーグルのインフラ技術の全体像を再構成して平易に解説した『Googleを支える技術』には大きな価値がある。この本のもう1つの価値は、そうしたインフラ技術の一部が今なお開発を継続中であり、どういう課題に取り組んでいるかを明らかにしていることだ。インフラよりもアプリケーションがフロンティアであると感じていたのは、グーグルのインフラがいかいすごかろうと、それはもうほとんど完成してしまったものだろうと思いこんでいたからだ。

 グーグルがしてきたことは、単に何万台かのコンピュータを使って計算処理を分散しました、というような話ではない。コモディティ化された大量の安価なCPUやハードディスクをいかに自律的、効率的に運用してグローバルな巨大ファイルシステムやデータベースを作るかというのがテーマだ。言葉にするとそれだけのことだが、相手にしているデータやハードウェアの量が桁違いに多いことと、PC間の接続距離を何階層かに分けて考える必要があることなど条件が複雑なことから、多くのチャレンジングな課題が出てくる。

 Rubyの生みの親である、まつもとゆきひろ氏は前書きに寄せて「Googleのしてきたことは、コンピューティングの未来の先取りです」と書いている。グーグルのインフラ構築というのは従来の常識やモデルが通用しない世界だから、グーグルはストレージシステムやコンピューティングのあり方を再定義しつつあるのだと言えるのだろう。また著者の西田圭介氏は、グーグルの巨大システムのしくみを1つ1つ見ていったとき、「はじめてOSやデータベースについて学んだときのようなわくわくする気持ちを覚えました」と書いている。確かに、グーグルの内部では、従来の意味でのコンピュータの教科書に載っていないような独特の仕組みがいくつも実現しているのだ。

 例えば、GFSやBigtableほど知られていない「Chubby」と呼ばれる分散ロックシステムがある。ChubbyはGFSに対する外部ロックシステムとしても機能するが、GFSで扱うのに適していない小さなデータを扱うファイルシステムとしても利用されるという。さらに、イベント通知機能を備えており、その特性からグーグル内部ではDNSサーバ代わりに名前解決に使われているという。Chubbyは5台で1つのセルを構成し、1つのマスタと4つのレプリカからなる。そのマスタはマシン間の投票で選ばれるという。また、Chubbyセルにはデータセンター内で閉じたものと、グローバルにアクセス可能なものがある――。

 グーグルの分散システムを支える多くの技術に似たアイデアは、アカデミックな世界では広く知られているものも多いという。ただ、著者の西田氏が指摘する通り、それを着々と10年かけて実装してきたこと、実験してきたこと、最適化してきたことこそが、「見えないグーグル」の強みだろう。それは必ずしもコンピュータサイエンス的なデジタルだけで完結するインフラばかりではなく、PCの消費電力(電源ユニットの改造)やハードウェアの故障との戦いという面でも膨大なノウハウを蓄積している。

 『Googleを支える技術』を読んでいて記者は思わず笑ってしまったのだが、著者の西田氏は随所にグーグルのインフラを利用する上での注意を書いている。例えば、過去のトラブルを引き合いに出しつつ「Chubbyを利用するときにはデータが大きくなりすぎないか、注意して使わないといけません」などと、まるでグーグルの新人研修用テキストに書くような文章を書いている。普通に考えれば誰の役にも立たない助言だが、その一方で、いずれ遠くない将来、こうした分散システム上でプログラミングをするのは、何もグーグル社員に限らなくなるのではないだろうか、という予感を感じさせるものでもある。

(@IT 西村賢)

情報をお寄せください:

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

キャリアアップ


- PR -
ソリューションFLASH

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

2023年のSNS炎上総数は189件、炎上元の媒体1位は「X」――コムニコ「炎上レポート」
コムニコが「炎上レポート」2023年版を公開しました。

今度の「TikTok禁止」はこれまでとどう違う?
米国ではまたしてもTikTok禁止措置が議論されている。これまでは結局実現に至らなかった...

「ゼロクリック検索」とは? SGE時代の検索の変化と5つの対策を解説
SEO専門家やマーケター、そして情報を求める人々にとって、「ゼロクリック検索」はどのよ...