Googleを支える技術


技術書をレビューするのは始めてかも。ただ、この本は技術書というよりかは解説色が強いからまぁ書いてしまう。裏表紙に

論文やWebなどで公開されているパブリックな情報をもとに技術的な側面から解説を試みています。

と書いてあるように、Google社員ではない筆者が論文などを噛み砕いて/翻訳してまとめた書となっているので、あくまで予測の範囲は脱しない。現状のGoogleは違うかもしれないし、すでに時間が経過することで変わっている可能性は高いのでこれをうのみにしないことが必要。

紹介されている要素としては、「検索エンジン」「データセンタ(主に電源周り)」「開発体制」の3点について、文章量の比率としては、6:3:1 という感じ。

検索エンジンについては高速に処理するためのGoogle独自のシステムが紹介されている。これが非常に複雑で、途中から理解することを諦めた。単なるweb作りとは訳が違うくらいに様々な役割のプロセス/システムがあり関連しあう。これは確かに論文で発表するに値するし、数学者としての側面を持つ創業者二人の研究成果の結晶をなんとなく雰囲気を感じたくらいか。

2つ目のデータセンタでは電源の消費量など軸に効率的な消費傾向を探っているが、筆者の言う「CPU の周波数が上がると、電力を非効率に消費するので、プロセスの消費傾向をもとに最適な CPU を選択する」は現実的ではないと思う。CPU 周波数は時代とともに速くなるので、逆に遅めの CPU を選ぶほどPCメーカは待ってくれない現実がある。また、最近ではデュアルコア/クアッドコアが全てなので、これに性質の異なるプロセスを複数走らせれば消費傾向が平均化されるのであまり周波数が高いから、、という意識は持たなくて良いはず。デュアルコア/クアッドコアの利用については筆者も述べている。

最後の開発体制については自分が書いた Google Developer Day 2008 のレポート とほぼ同じ内容。Google のカルチャーを重視した内部の様子(の予測)がかかれている。

やはり予測の部分を多く含むので、実際 Google が発表している情報の割合は30%という印象。Googleの技術詳細というよりかはごく一部についての断片的な情報に触れてなんとなくの雰囲気を感じるための本といえる。