« マイクロソフトのAgileの事例 | トップページ | 実践ソフトウェアアーキテクチャの解説記事 »

2010/08/26

グーグルが構築した大規模システムの現実、そしてデザインパターン

Googleによる大規模Webシステムのスケールアップの技術に関する記事があったのでメモ。

【元ネタ】
グーグルが構築した大規模システムの現実、そしてデザインパターン(1)~MapReduce編 - Publickey

グーグルが構築した大規模システムの現実、そしてデザインパターン(2)~BigTable編 - Publickey

グーグルが構築した大規模システムの現実、そしてデザインパターン(3)~教訓編 - Publickey

グーグルが構築した大規模システムの現実、そしてデザインパターン(4)~デザインパターン編 - Publickey

SaaSを実現する場合、ハードウェア(特にサーバー)のスケールアップ技術は必須。
多分そこには、たくさんのノウハウが必要。

アムダールの法則」にあるように、CPUをたくさんつなげたとしても、性能は向上しない。
マルチコアCPUが今流行しているが、理論上は制約がある。

Googleの技術で特徴的なことは、「信頼性はソフトウェアによって実現される」こと。
MapReduce、BigTableなどのように、並列処理に向くソフトウェアを大規模システムで使うこと。
そうすれば、ハードウェアの性能をフルに使える。

Erlangや関数型言語が静かに流行しているのも、並列処理に強い特徴があるからだろう。

日本でも、はてなやMixiでも大規模Webシステム構築のノウハウがあるはず。
色々調べてみたい。

|

« マイクロソフトのAgileの事例 | トップページ | 実践ソフトウェアアーキテクチャの解説記事 »

ソフトウェア」カテゴリの記事

ソフトウェア工学」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/49479/49262381

この記事へのトラックバック一覧です: グーグルが構築した大規模システムの現実、そしてデザインパターン:

« マイクロソフトのAgileの事例 | トップページ | 実践ソフトウェアアーキテクチャの解説記事 »