グーグルのクラウドを支えるテクノロジー > 第76回 2003年当時のサーバーアーキテクチャーを振り返る
私がマーケティング支援しているCTC教育サービスは中井悦司氏のコラム「グーグルのクラウドを支えるテクノロジー」第76回「2003年当時のサーバーアーキテクチャーを振り返る」を公開しました。興味がある方はご覧ください。
###
■はじめに
今回は、2003年に公開された論文「Web Search for a Planet: The Google Cluster Architecture」を紹介します。これは、17年前に公開されたもので、当時のGoogleのサーバーインフラの情報が提供されています。現在のインフラとは異なる点も多いと想像されますが、論文のタイトルにもあるように「Planet」スケールのサービスを提供するための考え方が示されており、現代的なクラウドシステムのアーキテクチャーをあらためて見直すという意味でも興味深い内容になっています。
■サーバーアーキテクチャーの特徴
この論文の冒頭では、当時の検索システムでは、15,000台以上のコモディティPCが利用されており、次の2つの基本方針をもとにアーキテクチャー設計がなされているとの説明があります。
(1) サーバー専用のハードウェアの代わりにコモディティPCでクラスターを構築して、ソフトウェアで信頼性を確保する。
(2) 高いスループットが得られるように、リクエストの並列処理性能を高める設計を行う。
(1)については「コモディティPC」という表現が印象的ですが、これは安価なPCであれば何でも構わないという意味ではなさそうです。この後で説明するように、当時の検索システムを動かす上で最適なCPUの構造などを分析しており、この言葉の背後には、「自分たちの目的にあったシステム構成を追求する」という合理的な考え方があるようです。(2)については、図1の概要図と共に、検索インデックス、および、検索対象のドキュメントが複数のサーバーに分散配置されていることが説明されています。特に同一のデータを複数のサーバーに複製することで、並列処理の性能を高めるとともに、障害発生時の冗長性を担保している点が強調されています。
この続きは以下をご覧ください
https://www.school.ctc-g.co.jp/columns/nakai2/nakai276.html