【感想・ネタバレ】[Web開発者のための]大規模サービス技術入門 ―データ構造,メモリ,OS,DB,サーバ/インフラのレビュー

\ レビュー投稿でポイントプレゼント / ※購入済みの作品が対象となります
レビューを書く

感情タグBEST3

Posted by ブクログ 2021年05月30日

実務的なコードとかは書かれていない。大規模なサービスを構築するときのノウハウについて書かれている。
実践に移すことはないが興味があったので。

1回 大規模Webサービスの開発オリエンテーション
 どの程度が大規模Webサービスなのか、あと概要。
2回 大規模データ処理入門
 はてなブックマークを例...続きを読むにしたデータ処理の入門
 データをメモリに載せることができないので遅くなる。計測してボトムネックになっているところを探して対策する。
3回 OSのキャッシュと分散
 OSのキャッシュ機構をつかう。サーバーを複数持って分散させる。
4回 DBのスケールアウト戦略
 MySQLの分散ノウハウ
5回 大規模データ処理[実践]入門
 省略
6回 [課題]圧縮プログラミング
 省略
7回 アルゴリズムの実用化
 アルゴリズムの選択は大事。例Suffyx Array(接尾辞書配列)Trie(トライ木)
8回 [課題]はてなキーワードリンクの実装
 省略
9回 全文検索技術に挑戦
 grep型、Suffix型、転置インデックス法
10回 [課題]全文検索エンジンの作成
 省略
11回 大規模データ処理を支えるサーバ/インフラ入門
 クラウド、自前どっち?
12回 スケーラビリティの確保に必要な考え方
 まずは負荷を計測すること
13回 冗長性の確保、システムの安定性
 基本サーバー台数を増やす。CPUの稼働率に余裕を持たせる。
14回 効率向上作戦
 冗長性を高めると稼働率が落ちる。そこで仮想化技術を使う(VMware,Virtual PC,Parallels,Xen)
15回 Webサービスとネットワーク
 ネットワークに階層構造を持たせる
特別編 今どきのWebサービス構築に求められる実践技術
 省略

2010年ごろの本ですでにこれだけの対策が必要なんですね。今頃はどうやっているのでしょう?

0

Posted by ブクログ 2013年06月03日

はてなのインターンシップでの教育、講義内容をベースに、大規模サービス技術の解説を行っている本。

大規模サービスというと海外が先行しているイメージですが、この本の内容も十分すごくて、大規模サービスを提供するシステムを構築する際の様々な工夫、ノウハウを知ることが出来ます。といいますか、ここまで情報をま...続きを読むとめて本として出せるのがすごいですね。

工夫点としては、メモリ、キャッシュの有効活用といった基礎的だけどよく効く内容から、MySQL のインデックスの効果、スケールアウト戦略、圧縮や計算量のオーダを落とす工夫など。著者たちが実際に大規模システムを構築、運用してきた経験、苦労から得られたノウハウなので、生々しいです。実際にこうやったらこうなった、だからこういう教訓が得られたという話題が多くて、試行錯誤の過程も見られるのが読んでいて楽しいですね。

また、アルゴリズムの知識や選択に関する話題も多めです。検索エンジンの実装についても載せられており、知見に富んだ内容となっています。実装の前の章で、転置インデックス、形態素解析、再現率と適合率といった解説から入るので、理解しやすかったです。

更に、終盤に運用面の情報として、スケーラビリティや可用性を高める工夫、稼動監視の効率化や安価で高速なハードの検討といったインフラ面の話題も載せられています。

0

Posted by ブクログ 2012年11月01日

WEBサービスの環境構築とか設定方法といったハウツー本ではない。
大量データ、大量アクセスを捌け、且つ柔軟に拡張可能なシステムを設計するのに必要な考え方、ノウハウが盛りだくさん。
↑のために情報系の大学でやるようなコンピュータの基本動作原理等も解説してくれている良書だと思う。
アプリケーション開発者...続きを読む向けに書かれている(はてなの新人研修講義が元ネタらしい)けどインフラエンジニアが読んでも非常に為になる。

コンピュータの基本動作原理については
小田圭二さんのこれ↓と一緒に読むと更に分かりやすいかも。
「絵で見てわかるOS/ストレージ/ネットワーク データベースはこう使っている」

0

Posted by ブクログ 2012年10月31日

まさに大規模システムならではの工夫や課題を列挙した一冊。単なるハードウェアのスケールアップだけではなくて、ちゃんと高速化も考えてどうするべきかについて、ハードウェア、システム構成、アプリケーションアルゴリズムごとに分かりやすく工夫を紹介しています。単なるありきたりのシステム設計を紹介するのではなくて...続きを読む、大規模ならではの特性を踏まえて対策を紹介しているので、非常に分かりやすいです。特に大規模システムに携わっている人なら必携です。

0

Posted by ブクログ 2012年08月28日

良い本です。
広くカバーしているので、深くは追求する箇所は少ないです。
特にインフラの方はサーバ・インフラを支える技術を参照する場面が多かった印象です。

大規模データを扱うときには今まで気にしなかった箇所まで気にしなければならず、どこを注意したらいいかを教えてくれる本でした。

0

Posted by ブクログ 2012年07月09日

実際のサービス開発・運営経験から書された良書。

最先端でなかなか情報がない大規模webサービスについて、まとめて書かれており、非常に参考になりました。

0

Posted by ブクログ 2012年06月19日

読み始め1/4で良いと響いた点
・OSの動作原理を知るということが、負荷分散の学習に重要
・学ぶべきは、そもそもミドルウェアが動いているOSにあるというのが個人的な見解

0

Posted by ブクログ 2012年06月10日

Webサービスのスケーラビリティを確保するための方法論が書かれた本。OSやデータベースの内容が中心。はてなの運用経験を基に書かれており、実際の業務の具体的な話が多くて勉強になった。個人でプログラミングしていても経験出来ないことだと思うので読んでおいて損は無い。

0

Posted by ブクログ 2012年02月08日

大規模サイトの運用のノウハウを紹介。
はてなでの実情をたくさん挙げているので参考になる。
案外普通のやり方であったりひたすら泥臭いことをしている所も多く、特別な存在では無いと知らされる。

0

Posted by ブクログ 2011年11月26日

インターンってところがすばらしい。
特色溢れる内容だし、ウェブ開発運用の知識が、業務のノウハウと共に感じることができる。

0

Posted by ブクログ 2011年11月25日

だいぶ前(半年~1年ほど)に読んだ。実家帰りの新幹線の中で読んだのだけれど、面白くて1時間ほどでサクッと読んだ後、2度3度と読んだことを覚えている。といってもすぐに仕事で役に立った内容といえばあまり無かったかも。でもオススメ。読むべき。

0

Posted by ブクログ 2010年08月13日

いいです。基礎を立ち返って勉強しなおすのにちょうどいいです。
インターンの学生向けの講義をベースにしているので分かりやすいですし。
入り口、復習にちょうどいい読みやすさです。

0

Posted by ブクログ 2017年01月22日

もともとはてなのインターシップ講義の内容をベースしている本著。基礎的な知識を踏まえつつも、より実践に近い内容が多いなとおもいました。大規模サービスというとインフラに近いレベルの話が多いのかと思っていましたが、アルゴリズムの項も大きくページが取られていたのが印象に残りました。

0

Posted by ブクログ 2015年03月06日

著者の大規模Webサービス(Mobage)でのDBの運用ノウハウが詰まっている。運用のノウハウを広く浅く学べるので、大規模サービスで動くDBの設計、開発、運用をするなら一読する価値がある。

0

Posted by ブクログ 2012年10月31日

はてなのインフラ担当者が「どうやって大量のデータをさばくインフラを構築するか」を主題に様々なアプローチを解説してくれます。
もともとインターン生を対象とした講義を書籍に焼き直したものらしく、僕のような非エンジニアでも十分に理解することができました。

DBサーバとウェブサーバのスケールアップ・スケー...続きを読むルアウトの違いや、アルゴリズム・キャッシュ・インデックス・冗長化など、「基本情報で何となく知ってたけどよく分からなかったこと」を知識として意味のあるレベルにまで持ってこれたと思います。
良書でした。

0

Posted by ブクログ 2012年09月28日

「はてな」の中の人が、実例を元に解説しているので参考になる。
中盤の、実際に検索エンジンプログラムを書いてみる演習はおもしろい。

0

Posted by ブクログ 2011年12月17日

エンタープライズシステムの仕事をしているので、WEBサービスのシステムの難しさが具体的にはよくわかっていなかったのですが、少し理解することができました。エンタープライズシステムより、創意工夫が許される意味では、技術力の柔軟性が試される分野だと思いました。

0

Posted by ブクログ 2011年09月12日

「はてなのインターンで行われる大規模技術の紹介」

メモリとディスクのスピードの違い、キャッシュの仕組み、 APはスケールするけどDBはしない、という基礎的な所から、 イマドキなベイジアンフィルタでのカテゴライズ、パーティションの「落とし所」どころまで幅広-く紹介。

ブックマークとかそれぞれのサー...続きを読むビスのインフラ規模を惜しげもなく紹介しちゃってたりして、結構あけっぴろげだなあと感心。

0

Posted by ブクログ 2011年07月30日

実際の仕事とは関係ないのでさらっと読んだ.ノウハウ的なことが多数書かれていて,Web屋さんのお仕事概要を知るにはいいかと.
てか,ACオートマトンとかSuffixArray忘れててヤバす...

0

Posted by ブクログ 2011年02月11日

はてなのインターン向けの講義録。内容は、Web インフラの管理方法、スケールアウトを考慮したアーキテクチャ、検索をメインにしたアルゴリズム。
全体として基本的なことだとは思うが、検索に関しては十分に知らないこともあったので、その点では参考になった。VBCode による効率的な数字エンコード、Trie...続きを読む 構造にリンクを付けることで探索を効率化する AC 法などが参考になった。このあたりでは、課題もついているので、手を動かしてみると面白い。

0

Posted by ブクログ 2010年11月12日

大規模なウェブサービスを運営するに当たって必要な事柄が簡潔にまとまっており読みやすい。日本国内のほぼ全てのウェブサービスがこの書籍で想定している規模に入るだろう。ビギナー向けの本ではないので、一歩先を目指す中級者、復習したい上級者にオススメ出来そう。

0

Posted by ブクログ 2010年07月24日

はてなでのインターン向け講習内容を元にした(日本での)大規模DC運営に関して書かれている。
WEBアプリケーションの負荷分散や冗長化について興味があったり実務に関わっているのであれば読んでみるといいのではないでしょうか。
かっこ書き(日本での)大規模としたのは、アメリカではGoogleは言うに及ばず...続きを読むはてなの運用内容を遙かに超えたデータセンター運営会社が数多くあり、そのレベルの運用がはてなではできていないからです。(する必要もないのですが。)

0

Posted by ブクログ 2020年10月13日

「はてな」を例に、サービスの提供拡大とともにシステムインフラの構築・拡張の変遷や、大規模サービスならではの課題(大規模データ、負荷分散、冗長性)に対する実際の対応などを知ることができる貴重な内容。

0

Posted by ブクログ 2020年08月05日

大規模なシステム組むときに読んでおくといい本。
だけど、厚すぎて読む気が萎える。
やっと読んでもあんまり頭に入ってなかった…
そんな仲間には薄い・イラスト多い・色多い!な本をオススメする。
つまりこれば逆の本。

0

Posted by ブクログ 2016年02月17日

読んで良かった。旬はだいぶ過ぎていて、あーはーん、な感じなのだけど、皆さん、読んでますよね。なんとなく、今回、再読。なんとなく。

0

「IT・コンピュータ」ランキング