お使いのブラウザは最新版ではありません。最新のブラウザでご覧ください。

CNET Japan ブログ

Googleの本質は新時代のコンピュータメーカ

2004/04/06 09:06
  • このエントリーをはてなブックマークに追加

プロフィール

umeda

シリコンバレーで経営コンサルティングを行なう傍ら、ベンチャーキャピタリストとしても活躍する梅田望夫さんが、IT業界の先を読むのに役立つ英文コンテンツを毎日紹介していきます。これを読めば、英語と業界動向を読む力が同時に身に付くはず(このブログの更新は2004年12月30日で終了しました)。
ブログ管理

最近のエントリー

先週金曜日から3回連続でGoogleのGmailの話になってしまうのだが、重要なことなので、今日もその話をしたい。

独自の低コストシステムを作り上げたGoogle

本欄3月19日「Google Newsに対抗するTopix.net」でご紹介したTopix.netの創業者兼CEOのRich Skrentaが、自らのBlogで、4月4日にGmailについて書いた「The Secret Source of Google's Power」が素晴らしい。最先端の事業や研究の当事者であるプロが、専門領域に近いところで深い内容について詳細に書くBlog。それが、アメリカにあって日本にはないものである。

「No, the story is about seemingly incremental features that are actually massively expensive for others to match, and the platform that Google is building which makes it cheaper and easier for them to develop and run web-scale applications than anyone else.」

Rich Skrentaの論点は、「Googleだけがもう既に、他社(例、Yahoo!) が追随しようにもコスト的に追随できないだけのプラットフォームを築いてしまったのではないか」というものである。僕も全く同感。Googleの競争優位の真の源泉はここにこそ存在するのだと思う。今日の内容は、約1年前の本欄2003年4月18日「Googleのカネをかけない斬新なシステム構築」以来、繰り返し議論してきたGoogleが自前で作り上げ、自分たちで運用している分散コンピューティングプラットフォームについての考察である。

「Google has taken the last 10 years of systems software research out of university labs, and built their own proprietary, production quality system. What is this platform that Google is building? It's a distributed computing platform that can manage web-scale datasets on 100,000 node server clusters.」

Googleはこの10年のシステムソフトウェア研究成果を大学の研究室から出して、独自のプロプラエタリーな製品レベル品質のシステムを作り上げた。Googleが作っているのは、「a distributed computing platform that can manage web-scale datasets on 100,000 node server clusters」だという認識である。

誰も追いつけないコスト競争力

そして、この分散コンピューティングプラットフォームという、98年創業以来磨きに磨き上げてきた自前のインフラがあるからこそ、GoogleはGmailというサービスを構想することができたのだ。競合企業は対抗したくても、コストが見合わないから、そもそもサービスすら提供することができないのではないか、というのが本稿の論点である。

「Speculation: Gmail's Architecture and Economics」

以降は、Rich Skrentaが想像するGmailのアーキテクチャとその経済性が語られている。

Gmailは1億ユーザまでスケーラブルに構想するだろうとRichは書く。そして、

「The most obvious challenge is the storage. You can't lose people's email, and you don't want to ever be down, so data has to be replicated. RAID is no good; when a disk fails, a human needs to replace the bad disk, or there is risk of data loss if more disks fail. One imagines the old ENIAC technician running up and down the isles of Google's data center with a shopping cart full of spare disk drives instead of vacuum tubes. RAID also requires more expensive hardware -- at least the hot swap drive trays. And RAID doesn't handle high availability at the server level anyway.」

RAIDでのその実現が難しく、コスト的にもかなり高くつく、と指摘する。

そして、Googleの場合は、

「Google has built their own distributed, fault-tolerant, petabyte filesystem, the Google Filesystem. This is ideal for the job. Say GFS replicates user email in three places; if a disk or a server dies, GFS can automatically make a new copy from one of the remaining two. Compress the email for a 3:1 storage win, then store user's email in three locations, and their raw storage need is approximately equivalent to the user's mail size.」

独自の「distributed, fault-tolerant, petabyte filesystem」があり、これがGmailをさばくインフラとして適していると述べている。このGoogle Filesystemは、Googleが独自開発したOSであることを思い出してほしい。

Google副社長のWayne RosingをACM Queueがインタビューした「A Conversation with Wayne Rosing」については、本欄2003年10月に「サンからグーグルへのソフトウェア開発のパラダイムシフト」と「グーグル開発チームの渾然一体としたパワー」で2回に渡ってご紹介したが、その中で、

「We have to write a lot of stuff ourselves. Just to give a few examples, we have a very large distributed file system called GFS, for Google File System. We've had to do a fair amount of fundamental computer science in distributed systems, because we essentially have one of the largest distributed computers in the world.」

と彼は語っていたわけだが、まさに、そのGFSのことである。

そしてRichはコスト計算をする。

「It's straightforward to spreadsheet out the economics of the service, taking into account average storage per user, cost of the servers, and monetization per user per year. Google apparently puts the operational cost of storage at $2 per gigabyte. My napkin math comes up with numbers in the same ballpark. I would assume the yearly monetized value of a webmail user to be in the $1-10 range.」

文中の「My napkin math」というのは、シリコンバレーでは、レストランのナプキンを使ってギークたちがこういう計算ばかりしているので、そういう表現をよくするが、ユーザ1人当たりにGmailが割り付ける1ギガバイトの運用コストは、年間2ドル程度だということ。この数字がGoogle以外には、Googleのプラットフォームなしには出せないのだ、というのがポイント。Googleがこのインフラコストを前提にサービスを開始した後で、10倍のコストがかかるインフラしか持っていなければ、後発でサービスに参入することなどできっこないのである。

普通のプロジェクトとGoogleのコストの違い

次の「Cheap Hardware」の項では、Rich Skrentaが過去に実際に経験した「普通のプロジェクト」におけるコンピューティングコストのかかり方とGoogleの低コストインフラとの違いを述べている。これは一読に値する。

「Any sane ops person would rather go with a fancy $5000 server than a bare $500 motherboard plus disks sitting exposed on a tray. But that's a 10X difference to the cost of a CPU cycle. And this frees up the algorithm designers to invent better stuff. Without cheap CPU cycles, the coders won't even consider algorithms that the Google guys are deploying. They're just too expensive to run.」

「Google doesn't deploy bare motherboards on exposed trays anymore; they're on at least the fourth iteration of their cheap hardware platform. Google now has an institutional competence building and maintaining servers that cost a lot less than the servers everyone else is using. And they do it with fewer people.」

といったあたりに実感がこもっている。明らかに普通の発想で作るシステムに比べて、桁違いのコスト構造を、Googleの分散コンピューティングプラットフォームは達成しているらしい。詳細は原文をどうぞ。

次の「What are all those OS Researchers doing at Google?」という項では、Rob PikeがGoogleに移ったことも含め、OS研究者をはじめとして、networking、distributed systems、Compiler Optimization、Thread migration、Distributed shared memoryといった分野の研究者がGoogleに結集していることを述べ、Googleの集まった研究者の論文一覧を眺めて、Richはこんなふうに感動する。

「I'm a sucker for cool OS research. Browsing papers from Google employees about distributed systems, thread migration, network shared memory, GFS, makes me feel like a kid in Tomorrowland wondering when we're going to Mars. Wouldn't it be great, as an engineer, to have production versions of all this great research.」

「新しいコンピュータ」を作ることが競争優位

そして最後の「Competitive Advantage」という項で、彼はこう書く。

「Google is a company that has built a single very large, custom computer. It's running their own cluster operating system. They make their big computer even bigger and faster each month, while lowering the cost of CPU cycles. It's looking more like a general purpose platform than a cluster optimized for a single application.」

全く同感だ。Googleは、インターネットの「あちら側」に全く新しいコンピュータを作り、その性能を日々上げていくことに、飽くなき努力を傾注し続けている「新時代のコンピュータメーカー」なのである。

そして、Richの最後の文章は、

「While competitors are targeting the individual applications Google has deployed, Google is building a massive, general purpose computing platform for web-scale programming. This computer is running the world's top search engine, a social networking service, a shopping price comparison engine, a new email service, and a local search/yellow pages engine. What will they do next with the world's biggest computer and most advanced operating system?」

全くもって見事なBlogだ。ため息が出る。

※このエントリは CNET Japan ブロガーにより投稿されたものです。朝日インタラクティブ および CNET Japan 編集部の見解・意向を示すものではありません。
運営事務局に問題を報告

最新ブログエントリー