古い記事
ランダムジャンプ
新しい記事
献本頂きました。ありがとうございます。
そうでなくとも絶対買う本ですが。

西田圭介 / Googleを支える技術 - 巨大システムの内側の世界


結論から言いますと、
Google のバックエンドの技術について
興味のあるIT系エンジニアや学生で、
英語よりも日本語を読むほうがはやい人は必読です。

グーグルについての技術的なトピックが
日本語でさくっと読めます。
Google 社員による英語論文やドキュメントを情報源とし、
それらを咀嚼して平易に解説しています。

「情報系の大学3年生程度の予備知識」を前提に
書かれているとのことで、
情報系の基礎的な語彙が分かっていれば、
確かに難解な話はありません。
数式も出てこないです。

第一章は検索の話で、クロール、インデックス、
ランキング、と Google に限らず基礎的な解説になっています
IIR で言うと19〜21章の内容にあたります)。

第二章はシステムの大規模化の話。
クラスタ、データセンターなど。
インデックスの分割が重要ですねえ。

第三章はシステムをスケールさせるための核となる技術である
分散ファイルシステム Google File System や
分散ストレージ(データベース) Bigtable、
分散ロックサービス Chubby などの話。
検索タスク全体に特化した設計になっているのが面白。

第四章は分散データ処理の話。
処理フレームワークである MapReduce や専用言語 Sawzall など
(MapReduce は IIR の第四章にも出てきます)。

第五章は運用コストの話。
消費電力を抑えたり、適切に電力配分したりなど。
HDDの故障予測とか。
私にとって疎い分野の話だったので非常に興味深かったです。

第六章は開発体制、開発環境の話。
少人数チームとかコードレビューとか
TechTalk とか TGIF とか。おまけ的です。

とにかく、この本の構成、方針は良いですね。
英語圏以外でこういう路線の技術書が読めるのは
日本だけなんじゃないかなあ、よく知らないけど。
ともかく、「日本語で読める」ってのは日本人にとって
学習の高速道路」を最高速でとばしてるようなものですので、
英語苦手なIT技術者はぜひぜひ読みましょう!
(それと並行して英語の勉強も!<自戒を込めて)


以下、本書の元ネタとなっている Google 発の英語論文リストです:
- The Anatomy of Large-Scale Hypertextual Web Search Engine (1998)
- Web Search for a Planet : The Google Cluster Architecture(2003)
- The Google File System (2003)
- Bigtable : A Distributed Storage System for Structured Data (2006)
- The Chubby lock service for loosely-coupled distributed system (2006)
- Paxos Made Live - An Engineering Perspective (2007)
- MapReduce : Simplified Data Processing on Large Cluster (2004)
- Interpreting the Data : Parallel Analysis with Sawzall (2005)
- The Price of Performance : An Economic Case for Chip Multiprocessing (2005)
- Power Provisioning for Warehouse-sized Computer (2007)
- Failure Trends in a Large Disk Drive Population (2007)


関連書籍:

デビッド ヴァイス / Google誕生 - ガレージで生まれたサーチ・モンスター


ジョン・バッテル / ザ・サーチ グーグルが世界を変えた


ジェフ・ルート, 佐々木俊尚 / 検索エンジン戦争