Project Prism
Jay Parikh
big data

超ビッグ・データ―Facebookは毎日25億件のコンテンツ、500TBのデータを処理中

次の記事

リーク写真―おそらくこれが新iPhoneのコネクタケーブルだろう

Facebook Big Data Numbers

今日(米国時間8/22)、Facebookは本社に少数のジャーナリストを招いて同社が処理するビッグデータの実態について興味ある数字を明かした。たとえば、Facebookのシステムは毎日25億件のコンテンツ、500TB以上のデータを処理しているという。また「いいね!」は毎日27億回、アップロードされる写真も毎日3億枚で、30分ごとに105TBのデータがスキャンされるという。またPrismというプロジェクトも紹介された。

こうしたビッグデータ処理の重要性について説明してくれたのはエンジニアリング担当副社長のJay Parikhだ。「ビッグデータというのは単なる量をいうのではない。そのデータから重要な情報を抽出し、ビジネス上の意思決定に活用できて初めてビッグデータだといえる。そうした活用ができていないのであれば、いくらたくさんデータを集めていてもビッグデータではない」とParikhは言う。Facebookは巨大データを数分で処理できるので新プロダクトのリリース、ユーザーの反応の調査、それに応じたデザインの変更などをほとんどリアルタイムで実行できるという。

今回Facebookは100PB(ペタバイト)にも上るデータが単一のHadoopディスク・クラスタに格納されていることも明らかにした。Parikhは「われわれは世界最大の単一Hadoopシステムを運用しているものと考えている」と述べた。私は「(本家の)Yahooのクラスターより大きいのか?」と私が尋ねると”Parikhは誇らしげに「そうだ」と答えてウィンクを送ってよこした。

「中小企業にとってはたいへんなデータ量に思えるかもしれないが、何年といわず何ヶ月かのうちに100PB程度のデータ量には誰も驚かなくなるだろう。処理速度は日に日に増大しており、世界はますます巨大なデータを欲している」とParikhは言う。

こうしたビッグデータはFacebook自身と同時に広告主のためにも活用されているという。「われわれはさまざまな側面から広告の効果を測定している。性別、年齢、関心などのユーザー・データと広告がどのように関連するかを詳しく測定しているので、〔たとえば〕ある広告がカリフォルニアで特に効果が高いと分かればわれわれはその広告のカルフォルニアでの表示回数をアップさせて費用対効果を高めるなどの対応が可能だ。」

Facebookはシステムの改良を実施するに当たって実データではなく、過去のデータセットに対してシミュレーションを試みることができる。「ユーザー・インタフェースをこのように変えた場合クリックスルー率がどう変わるかなど、本番前にさまざまなモデルをテストすることができるようになった」という。またごく一部のユーザーに対してのみ新機能を公開するGatekeeperというテスト・システムも用意されている。

次にプロジェクトPrismが説明された。現在Facebookでは本番用ユーザーデータベースを単一のデータセンターで処理しているという。他のデータセンターは冗長化とバックアップに利用される。メインのデータベースの処理容量が足りなくなると、別のデータセンターの容量を拡大し、全データを引越しさせている。こうした巨大データの移動はリソースの無駄を生んでいる。

ParikhによるとプロジェクトPrismではデータを複数のデータセンターに分散しながらあたかも単一データベースであるかのように取り扱えるシステムの構築を目指してるという。つまり本番用のデータをカリフォルニア、バージニア、オレゴン、ノースカロライナ、スウェーデンの各データセンターに分散して格納できるようにする。

またParikhはプライバシー問題についても触れ、Facebook社員が特権を乱用してユーザーデータに不当な目的でアクセスすることを防止するために数多くの保護措置が取られていると述べた。すべてのデータ・アクセスはログが残され、誰が、いつ、どこで、どんなデータを閲覧したか検証可能になっている。ユーザー・データへのアクセス許可が与えられるのはそうしたデータを必要とするプロダクトの開発チームのメンバーに限られる。またユーザーデータの正当な利用の範囲について集中的な研修を受けることが義務付けられている。正当な目的なしにユーザーデータにアクセスした社員はただちに解雇される。Parikhは「例外は一切認められない。われわれはこの点に関してこの上なく厳格な立場を取っている」と保証した。

[原文へ]

(翻訳:滑川海彦 Facebook Google+