初のTwitter×ワールドカップを終えて
FIFAワールドカップ(W杯)南アフリカ大会が終わって、間もなく1週間が経ちます。寝る間を惜しんで深夜から未明、早朝にかけて試合観戦した日々が懐かしく思えます。
今回の南アフリカ大会は、Twitterが誕生してから初めてのW杯でした。時を同じくして、日本でもTwitterが広く浸透し始めていましたから、W杯の熱狂がそのままTwitterのタイムラインに渦巻いていた感があります。Twitter画面を開いたiPhoneを片手に、あるいはPCを傍らに置いてW杯観戦した方も多いのではないでしょうか。ご他聞に漏れず私もその一人で、象徴的なプレーがあるたびに、誰に向けるでもなくワーワー、ギャーギャーとつぶやいて(ツイートして)いました。
●Twitterユーザーに対するW杯の影響力は?
個人的にはTwitterにおけるW杯の盛り上がりを強く実感していましたが、実際に世間的な盛り上がりはどうだったのでしょうか。
日本 VS デンマークの終了直後には、日本代表の勝利を祝うツイートが殺到し、1秒間当たりのツイート数で過去最高記録となる3283件を達成したというニュースも話題になりましたが、今回は、Twitterサービス「ReTweeter」を用いて、W杯がどれほどTwitterユーザーの注目を集めたのか検証してみました。
ReTweeterとは、あるツイートを実際に閲覧する可能性がある「のべユーザー数(重複含む)」(views)と「リツイート(RT)数」によって、そのツイートの影響力を測るサービスです。ViewはRTされた数とRTしたユーザーのフォロワー数から算出しています。
以下の表は、大会期間中(ただし取得できたのは6月8日以降のデータ)の日別ランキングトップ10の中で、W杯あるいはサッカーに関するツイートをピックアップしたものです。
このデータを見ると、日本代表の試合が行われた同日に、W杯絡みのツイートが多くなされているのが分かります。
特に注目したいのはviewsの数で、6月25日の「絶対に貼らずにいられない写真が、そこにはある http://twitpic.com/1zmf5p #okachan_sorry」や、6月30日の「朝ズバっ!で駒野選手のお母さんにインタビューして『皆さんに申し訳ない』と言う言葉を引き出し放映したのは、いかがなものかと思う。」というつぶやきは30万viewsを超えています。ここ1カ月のランキングを見てもこの数字に匹敵するツイート(ほかのジャンルもすべて含む)がないことから、その伝播力は群を抜いていたと言えるでしょう。
これらのツイートには及ばないものの、「【オシム】日本代表、明日は勇敢に戦え。」(18万8616views)「FIFAのページにワールドカップ史上、1試合に直接FK2本きめたのは日本が最初って書いてある」(15万7767views)なども高い影響度を持ったことがうかがえます。
せっかくですので、専門家の意見として、ReTweeterの開発者であり、日ごろからTwitterに深く接しておられるユーザーローカルの閑歳孝子さんに、W杯とTwitterの結び付きに関する全体的な感想をいただきました。
W杯期間中はほぼ毎日のように関連ツイートがランキングに入ってました。主に見てると、蘊蓄(うんちく)、デマ、ネタに集約されているかと思います。
試合中はTwitterの公式発表の通り、日本はものすごい流速を集めていましたが、何か特定の発言がRTされるというわけではなく、皆がハッシュタグなどとともに観戦していたようです。
逆に試合終了後などはネタ、特に今回の場合はデマ(駒野選手関連)がRTにより急速に波及していました。すぐ「これはデマだ」と裏を取った人の発言が再度RTされていく様子は、とてもTwitterらしかったです。
●W杯ではクジラが頻発
さて、W杯を観戦しながらTwitterを使っていると、しばしばクジラをお目にかかった方も多いのではないでしょうか。そう、トラフィックが集中してサーバが重くなると、画面に現れるクジラのイラストのことです(Fail Whaleという名前なんですね!)。
直近だと、決勝戦のスペイン VS オランダで、スペインのアンドレス・イニエスタ選手が得点を決めた際、瞬間的にクジラが顔を出しましたが、日本代表の試合ではクジラのオンパレードでした。例えば、カメルーン戦やデンマーク戦で本田圭佑選手が得点を挙げたときなどは、しばらく(時間にして1〜2分)サービスが利用できなかった記憶があります。
なぜ、Twitterのサーバはダウンするのでしょうか。データベースを専門にされている大学の研究員の方に技術解説いただきました(公開されている情報から推定した部分も含まれているとのことです)。
Twitterは、通常のWebサイトと異なり、非常にデータの更新が多いことが特徴として挙げられます。Twitterは分散メモリキャッシュ「memcached」というキー・バリュー・ストア(KVS:Key-Value Store)を使っており、KVSは通常、データをハッシュ分割して、shared nothingの形(サーバ間でデータを共有しない)で持ちます。例えば、太郎くんのデータはサーバA、花子さんのデータはサーバBという具合です。
自分自身のIDでログインした際には、フォローしているユーザーのデータが置かれているサーバにそれぞれ問い合わせてデータを集めてから、タイムラインなどに表示していると思われます。あるデータに対して同時に更新要求があって、さらに一貫性を補償しようとすると、データをロックして排他制御しなければなりませんが、memcachedはデータをロックしないようです。
従って、結果には、I/O(ネットワークかインターフェイスなのかは分かりませんが)がボトルネックになり、サーバが落ちるという事態が起きているのだと思います。