「大規模サービス技術入門」を読む

[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)
[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)伊藤 直也 田中 慎司

技術評論社 2010-07-07
売り上げランキング : 3225


Amazonで詳しく見る
by G-Tools

自分はサーバの運用をしているわけではないので、具体的な実装方法とかさておき、読み物として読んだ。
自分にとってのポイントをピックアップして、メモとして残す。

  • 第2回 大規模データ処理入門
    • 大規模データは何が難しいか
      • メモリ内で計算できない。
      • ディスクを読んでいる。
    • メモリはディスクの10^5〜10^6倍以上高速(探索)
      • 転送速度 メモリ:7.5GB/sec、ディスク:58MB/sec
      • CPU負荷のスケーリング⇒ロードバランサ
      • I/O負荷のスケーリング⇒難しい(DB)
    • 大規模データを扱うための勘所
      • いかにしてメモリで済ませるか⇒キャッシュ機構
      • アルゴリズム、データ構造
      • データ圧縮、情報検索技術
  • 第3回 OSのキャッシュと分散
    • キャッシュできない規模になったら、スケールさせる⇒局所性(アクセスパターン)を考慮した分散
  • 第6回 圧縮プログラミング
  • 第11回 大規模データ処理を支えるサーバインフラ入門
    • クラウドコンピューティング
      • メリット:スケーラビリティ
      • デメリット:サービス独自の仕様に対応する必要がある。あいまいなロードバランサ
  • 第12回 スケーラビリティの確保に必要な考え方
    • レイアごとのスケール
      • APサーバ⇒容易
      • データソース⇒readの分散:容易、writeの分散:難しい
  • 第14回 効率向上作戦
    • 仮想化サーバの構築ポリシー
      • ハードウェアの利用効率の向上
    • 仮想化のデメリット
      • パフォーマンス上のオーバーヘッド
    • メモリが安価に
      • 8GBで1万円(2010年)
    • SSD
      • メモリほどではないが十分に高速
  • 第15回 Webサービスとネットワーク
    • ネットワークの分岐点
      • 1Gbps(PCルータの転送能力の限界)
      • 500ホスト超え(1サブネットに配置できるホスト数の限界)