Twitterは、現在1秒間に120万つぶやきがあるそうだ。

そんな、膨大なトランザクションを扱うDBの設計アーキテクチャーについて「Qcon Tokyo2010」でシステムアーキテクトNick Kallen氏がDB設計上の考慮点を述べている。論理構造は、140文字のつぶやきテキストとフォローユーザ、フォロワー、リストを管理する極めてシンプルなものだが、性能向上、スケーラブルな面での設計が必要とされる。主要3点は、
・ツィット時間による分散配置によるテーブルサイズの軽量化
・DBへの書き込みは、非同期でメッセージ配信方式による
・フォロー、フォロワー関係の二重持ち
で、これらによりSQLでのロック待ちやデータアクセスのオンメモリ化による高性能化を実現しているようだ。