メモ

Googleは1つの検索クエリーに対し、1000台のマシンを使って0.2秒で処理している


検索したいフレーズを入れれば即座に結果を返してくれるあのGoogleですが、その1フレーズを処理するため、実に1000台ものサーバを使い、わずか0.2秒で超高速処理していることが、WSDM 2009にて明らかになりました。基調講演を行ったのはGoogleフェローであるJeff Dean氏で、2008年6月における「Google I/O」カンファレンスでは700~1000台のサーバで0.5秒以下の時間がかかると言っていましたが、今回の講演ではユーザーの気づかないところでGoogleは着実に進化し続けていることも明らかになりました。

知られざるGoogleの裏側の最新情報は以下から。
Geeking with Greg: Jeff Dean keynote at WSDM 2009

Single Google Query uses 1000 Machines in 0.2 seconds

まず1999年から2009年現在までにおけるこの10年間のGoogleの成長のわかりやすい例から。

・今はかつてよりも1000倍のクエリーを処理している
・マシンの処理能力は1000倍になった
・以前は1000ミリセカンドかかっていたが今は200ミリセカンドまで高速化された
・ページのアップデート検知に至っては10000倍に達しており、最初は反映まで数ヶ月かかっていたが今はページが更新されて数分で反映される


また、Jeff Dean氏によると、Googleは検索インデックスを数年前にすべてメモリ上に置いており、検索しようとしている人にほとんど瞬間的に検索結果を見せるため、各クエリーごとに以前のような2、3ダースのマシンではなく、数千台のマシンが連携して処理しているとしています。


Googleはこの数年間に渡ってさまざまなインデックス圧縮技術を開発しており、解凍に必要とされる交替作業の数を最小化するためにポジションの4つのデルタを一まとめにしたフォーマット上で最後に解決したと話しています。

また、Googleは彼らのそのデータがディスクのどこに置かれているかにも注意を払っており、ハードディスクの中でもより高速にデータを読み出すことができるディスクの外周部にすぐに読み出す必要のあるデータを配置、ディスクの内周部にはコールドデータ(すぐに読み出す必要のない、読み出し頻度の低いデータのこと)や短いデータを置いているそうです。

また、通常サーバ用途においては、エラーを自分で訂正できる通常より高い価格のECCメモリを使うのに対し、Googleはノンパリティのメモリを使っているため、エラーから回復するためのプログラムを自作し、ディスクスケジューラも自作。Linuxのカーネルもニーズを満たすために何度も修正を加えてきたとのことです。

物理的なサーバについても、最初期はケース無しの自作サーバ、それから通常のラックに収めるようなサーバになったが、今はまたケース無しのカスタムサーバに戻っているとのこと。

これが最初の頃のサーバ


Jeff Dean氏いわく、Googleはこの10年間に7つのメジャーなリアーキテクチャ(再構築)をロールアウトしており、これらの変更はしばしば完全に異なるインデックスフォーマットやGFSやBigTableのようなまったく新しいストレージシステムになることもあったとのこと。これらすべてのロールアウトにおいて、Googleはもしうまくいかなかった場合には直ちにロールバックするということも行っていたそうです。いくつかのロールアウト時には新しいデータセンターでは新しいコードが動き、古いデータセンターでは古いコードが動きっぱなしで、データセンター間のトラフィックをスイッチすることもあったとのこと。

また、Googleは検索しているユーザーが気づかないような小さな変更と実験、新しいコードのテストを常に行っており、それらの実験はすばやく、かつ静かに行われるため、ユーザーは何が変わったか気づくことはできないだろうとしています。

言語の壁についても引き続きGoogleは取り組み続けており、単に1文を翻訳するためにマルチテラバイトモデルとなっているGoogleの機械翻訳システムが100万もの自動照合を行っているとのこと。Googleの目標は、あなたがどの言語を話すことに決めているかにかかわらず、出入りできるすべての言語で情報を得られるようにすることであるとしています。

この記事のタイトルとURLをコピーする

・関連記事
Googleの初期コンピュータストレージ - GIGAZINE

初代Googleのアルゴリズム解説 - GIGAZINE

あなたがGoogleで検索する度に12セントがGoogleの収益に - GIGAZINE

GoogleのCEO、エリック・シュミットによる経営哲学とは? - GIGAZINE

Google世代にとって暗記は時間の無駄 - GIGAZINE

Googleのデータセンターで火事、6台の消防車が出動して消火活動 - GIGAZINE

ハードディスクに関する4つの都市伝説 - GIGAZINE

新しいGoogleデータセンターを発見する「New Google Data center tool」 - GIGAZINE

GoogleがサーバーにSSDを採用へ、量産効果でSSDが値下がりか - GIGAZINE

Googleの誇る巨大データベースBigTableのオープンソースクローン「Hypertable」 - GIGAZINE

in メモ, Posted by darkhorse

You can read the machine translated English article here.