西田圭介のレビュー一覧
-
Posted by ブクログ
グーグル。この巨大な検索エンジンを支えているシステムを解説したのが本書です。正直、僕はこの本の3割程度しか分かりませんでしたがそれでも最新のテクノロジーを組み合わせているということはよく分かりました。
僕はもともと情報系の大学、もしくは専門学校を卒業していないので、ここに書かれていることは正直、専門外の門外漢に過ぎませんが、現在、自分がやっている商売に少しでも役立てることができるならと、そして、日ごろ自分が何気なく使っている検索エンジンのグーグルがどういったシステムで運用されているのだろうという興味からこの本を手にとって読んでいました。
内容はというと、いやはや、やっぱり難しい。ここにこうして感想なんぞをアップしてはおりますけれども、この段階でこの本に書かれていることの3割が分かったかどうかは自分でも非常に疑わしいものです。しかし、さすがIT業界のトップエリートをひた走る会社なだけのことはあるということだけはよく分かりました。このシステムを自宅のガレージで考案した、ラリー・ペイジとサーゲイ・ブリンの二人には本当に頭が下がります。
それでも、僕が唯一この本の中で分かったことはこのシステムを24時間365日休みなく運営するにはとてつもない電気代がかかるということだけでした。それと社員全体の人件費をほぼ広告収益で稼ぎ出すというのは、その裏でグーグルの社員の一人一人がどれだけ日ごろがんばっているのかを、僕に教えてくれるものでございました。 -
Posted by ブクログ
ネタバレインデックスの話などは押さえておきたい。(転置インデックスなど)
・当然だが、大規模化したシステムとそうで無いシステムは大きく違う。その典型が、GFSとwork queue
cpuバウンドな処理はwork queue 、ioバウンドな処理はGFSというように、スケールアップなシステムを作る。
・Googleなど大規模システムでは、①ソフトウェアでの信頼向上②大量なハードウェアでの負荷分散③コストパフォーマンスの高い安価なハードウェアという観点で大規模システムを作っている。
やはり、ソフトウェアのスキルが重要。
・gfsの概要が理解できた。大規模システムにはなくてはならない、ネットワークファイルシステムだと感じた。冗長性や、スケーラビリティ技術が興味深い。チャンク単位での取り扱いや、マスターの動きなど興味深い。そういったシステムに自分も触れてみたい。
・大規模システムでは、レガシーなスキル、知識も大事だが、大規模を想定した自動運用などの工夫がかなり重要になってくる。そう考えると、今までの手法は通用しないことがよくありそうだ。
・分散dbのbigtableは興味深い。
クライアントはライブラリ経由でのアクセスで、抽象化されたアクセスを行う。唯一のロックが行ロックのようなことらしい。blob型のようなことらしい。xmlデータベースともちかいのかなぁ?
・bigtableのアルゴリズムが難しい。一度で理解できない。最大容量は2EBらしい。
・chubbyという分散ロックサービスがあるらしい。gfsやbigtableの機能を支える基盤技術のようで、排他制御を実現するみたい。また、分散ファイルシステムであり、変更がすぐに反映されるため、dnsサービスとしてもしようしているみたい。
・hadoopのところは興味深い。map とreduceの概要があり、これからどんどん勉強していきたい。
sawzallという分散処理で使われる言語があり、共通化が行われている。rdbmsのsqlみたいなもの。
・プロトコルバッファという、共通のプロセス間通信の仕組みがあるらしい。
・大規模分散システムはとても興味深い。hadoopとか、本当に勉強していきたい。hdfsやpigなどは、googleの分散処理システムのオープンソースプロジェクト。
・電力消費の説明は説得力がある。cpuは最大の消費で大体半分前後を占めているみたい。以前の自分で測定した時のものをみて納得。
『パソコン起動時稼働時80〜100W程度 アイドル時60W前後 電源オフ 5w
パソコンプライムPC
電源オフ 0w フル稼働 89w』
・動作クロックを上げるのは消費電力に大きな影響を与えるらしい。パフォーマンスを20%上げるには1.2*3乗で1.78倍の電力消費になるという話。故に、クロック周波数を上げるのは限度があり、マルチコアCPUの流れにいっている。
・電力消費のところはとても詳しく、かつ、計測データを用いた説得力あるせつめいだとおもった。また、実際の機器のデータシートを元にした電力見積もりと、最適化した電力設備設計ではコストが二倍ほど違うというのも、感心した。
・節電対策としてのクロック周波数のコントロールは確かに有効みたい。実際の変化を計測してみたいものだ。
・hddの故障頻度は温度や読み書き頻度に影響のあるという通説は、疑って見る必要があるらしい。また、smartで障害の予兆は多少分かるみたいだが、それでも64%程度で、残り36%はなかなか予兆がないみたい。なので、壊れても大丈夫なようにシステムを組んでおくことが大事
・全米のデータセンターのスケールにはテンションがあがる。ひとつのさいとあたりに、何十万台という規模のよう。 -
Posted by ブクログ
Googleのシステムってどうなってんの?というのは素直な興味としてあるので、読んでみました。
私自信プログラマではないので、きちんと理解できないところはありましたが、全体としてなんとなく納得。消費電力の抑制が大きなテーマのひとつになるっなんていうのは非常によく分かります。CPUだけの話ではなく、大規模ネットワークの通信機器も同じように消費電力の問題に直面しつつありますし。
また、テスティングやドキュメンテーションを非常にしっかりやっているところなど、まったく当たり前のことなのですが、感心です。20%ルールなどが有名ですが、具体的な開発ルールがしっかりと整備されているところが強みなような気がしました。