■Facebookのデータセンターに見るMySQL活用事例 - MySQLカンファレンス
http://news.mynavi.jp/articles/2008/04/28/mysql/001.html
キーノートにおいて、facebookの環境は以下のようになっていると発表された。
アクティブユーザー数…7,000万人
ユーザー数の増加率…多いときで4日で100万人くらいのペース
Webサーバ台数…1万台
memcachedサーバ台数…805台
MySQLサーバ台数…1,800台(マスター/スレーブ各900台ずつ)
Webサーバへのリクエスト量…毎秒2,000万回
memcachedのヒット率…95%
MySQLサーバへのSQL文発行量…毎秒50万回
memcachedのメモリ搭載量…15TB
MySQLサーバのメモリ搭載量…25TB
MySQLのバージョン…5.0.44 Enterpriseをベースに改変(後述)
2008年の記事です。
ただfacebook自体拡張などを続けていたり、サーバ自体の性能アップが図られているため常に変動していますが、規模感はつかめると思います。
■米フェイスブック、新型サーバー構築-設計を他社に開放
http://jp.wsj.com/IT/node_218493
【サンフランシスコ】ソーシャル・ネットワーキング・サービス(SNS)の米フェイスブックは7日、従来同社が使用していたものよりも38%電力効率の良い新型のサーバーを構築したと発表した。その設計仕様は他社と共有する方針という。
数分ググった感じではテーブル設計書やER図の類は公開されていないようですね。
2011/11/14 19:01:16中の人ぞ知るといった感じでしょうか。
facebookの場合、memcachedやHBASEなどのNoSQLをよく使っているようですので、MySQLに格納しているテーブル数はそれほど多くないのかもしれません。
外部に公開しているAPIの中に、FQLという独自のデータ操作を行う言語があるのですが、そちらが多少は想像する際の参考になるかと思います。
http://developers.facebook.com/docs/reference/fql/
※最低でもこれくらい、ということで、実際にはもっとあるということです。
ありがとうございます!プログラムを勉強しだしたら、フェイスブックやツイッターやグーグルがどういう構造で動いてるのかすごい気になってしょうがないのです。
2011/11/14 19:23:32