The Four Meta Secrets of Scaling at Facebook
Thursday, June 10, 2010 at 10:42PM
http://highscalability.com/blog/2010/6/10/the-four-meta-secrets-of-scaling-at-facebook.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+HighScalability+%28High+Scalability%29&utm_content=Google+Feedfetcher
![]()
Aditya Agarwal, Director of Engineering at Facebook, gave an excellent Scale at Facebook talk that covers their architecture, but the talk is really more about how to scale an organization by preserving the best parts of its culture. The key take home of the talk is:
Facebook のエンジニアリング部門で Director を務めるAditya Agarwal が、Facebook のアーキテクチャをカバーする、その素晴らしいスケールについて話してくれた。しかし、その内容というと、同社の文化的に優れた部分を維持することで、組織のスケールを調整する方式に多くの時間が割かれた。 そこでの重要な考え方は、以下のとおりである:
You can get the code right, you can get the products right, but you need to get the culture right first. If you don’t get the culture right then your company won’t scale.
たしかに、コードを得ることも、プロダクトを得ることもできるが、最初に得るべきは文化だ。 それを的確に行えないなら、Facebook 自身がスケールできなくなる。
This leads into the four meta secrets of scaling at Facebook:
この言葉により、Facebook をスケールするための、4つのメタ・シークレットが導かれる:
- Scaling takes Iteration
- Don’t Over Design
- Choose the right tool for the job, but realize that your choice comes with overhead.
- Get the culture right. Move Fast – break things. Huge Impact – small teams. Be bold – innovate.
Some Background
- Facebook is big: 400 million active users; users spend an average of 20 minutes a day; 5 billion pieces of content (status updates, comments, likes, photo uploads, video uploads, chat messages, inbox messages, group events, fan pages, friend connections) are shared on Facebook every week; 3 billion photos uploaded each month; 250 applications that have more than 1 million users a month; 80,000 connect applications, 500,000 applications; 2 million developers; 150 million memcache operations per second; thousands of memcache servers with 10s of terabytes of memory; 300 developers.
- Facebook is big: 4億人のアクティブ・ユーザー。ユーザーあたり 1日平均で20分の滞在。1 週間ごとに50億個のコンテントを共有(status updates, comments, likes, photo uploads, video uploads, chat messages, inbox messages, group events, fan pages, friend connections)。 1ヶ月に30億枚の写真をアップロード。1カ月に100万ユーザーが利用する 250種類のアプリケーション。8 万のアプリケーション接続と、50万のアプリケーション、200万のデベロッパー。毎秒 1億5000万回の memcache 処理。数10テラバイトのメモリて構成される、数千の memcache サーバー。 300人のデベロッパー。
- Facebook is difficult to scale. Each type of content has its own access pattern which makes scaling difficult. Everyone uses Facebook in a different way. Every experience is unique. Most websites have a scaling story of adding more servers because the data can be partitioned. Scale horizontally. In Facebook users can’t be partitioned because users can join any network. It’s a global network that tries to capture everyone in the world, it allows anyone to friend anyone, and can represent any relationship between users. Every new user can access any other user’s data which means there’s no way to partition users by geography, or any other metric. Every user on Facebook has 130 friends, but there’s no cut that allows you to partition the data so that access is only in that cluster.
- Facebook is difficult to scale. それぞれのコンテント・タイプが、スケーリングを困難にするアクセス・パターンを持っている。ユーザーごとに異なる Facebook の使い方。すべてのエクスペリエンスがユニーク。データのパーティショニングを実現するために、大半の Web サイトに適用される、サーバー追加に関する個々のスケーリング・ストーリー。水平方向へのスケーリング。あらゆるネットワークに参加する Facebook ユーザーを、パーティショニングすることは不可能。 すべての人々を引きつけるグローバルなネットワークであり、すべての人々が友人になる機会を作り、あらゆるユーザー同士の関係を表現。 地理的な制約などによる制限により、ユーザーを分離することなく、新規ユーザーが他者のデータにアクセスできる環境を実現。130人の友人を持つ Facebook の全ユーザーからのアクセスを、対象となるクラスタだけに限定するような、データ分割を許すような処理を排除。
- Overall architecture has 4 main components: Load Balancer, Web Servers (written in PHP), Services (fast, complicated, search, ad, scribe), Memcached (fast, simple), Databases (slow, persistent).
- Overall architecture has 4 main components: Load Balancer/Web Server(PHP で記述)/Service(高速性と安定性を備えた検索・広告・記述)/Memcache 化(高速でシンプル)/Databases(低速であっても永続性を達成)。
<続く>
これは序の口、次回が白眉(?) ーーー A.C.
<関連>
Facebook のスケール感覚に驚愕! _2
ーーーーー
Facebook は RFID タグで、アメリカ版 お財布ケータイを狙うのか?
ロシアのハッカー Kirllos が、150万人分の Facebook アカウントを売りに出すという
Facebook と Greenpeace : Oregon のデータセンターをめぐって対峙
Office 2010 は、Docs.com で Facebook とコラボ?
ーーーーー
10億人のユーザーを目指す、Twitter の 6つの戦略とは? _1
10億人のユーザーを目指す、Twitter の 6つの戦略とは? _2
10億人のユーザーを目指す、Twitter の 6つの戦略とは? _3
10億人のユーザーを目指す、Twitter の 6つの戦略とは? _4




























[...] [Facebook]Facebook のスケール感覚に驚愕! _1 ? Agile Cat ― Azure & Hadoop ― Talking Book [...]
Pingback by 6月16日 今日のTop「「クラウド化する世界」のニコラス・カー氏、「Google SuggestはGoogleの不気味さの象徴」」 | P2P today ダブルスラッシュ — June 16, 2010 @ 11:10 pm |