濃縮還元オレンジニュース

Twitter、分散フレームワーク「Gizzard」公開

2010年4月6日、Twitterは独自に開発した分散フレームワーク「Gizzard」をGitHubにオープンソースとして公開しました。Gizzardは「シャーディング」と呼ばれる、1台に格納するとパフォーマンスに影響を及ぼす大容量なデータベースを複数台に分割することで解決を図る手法をサポートするフレームワークです図1⁠。TwitterのバックエンドにScalaが使われていることが以前話題となりましたが、このGizzardもScalaで書かれています。

図1 Gizzardのシステム構成モデル
図1 Gizzardのシステム構成モデル
出典:http://github.com/twitter/gizzard

Gizzardはミドルウェアとして動作し、RailsやPHPなどで動くWebフロントエンドからのリクエストを受け取り、My-SQLやRedisのようなインメモリDB、Luceneなど各種データストアへ渡します。Twitterでは同時に公開している分散グラフデータベース「FlockDB」とあわせて運用しており、秒間10,000を超えるリクエストをさばいているようです。また耐障害性も備えており、レプリカ作成はもちろんのことレプリカが壊れても正常に動作するようなしくみを有していたり、データストア間のマイグレーションもすばやく行えるようになっているようです。

Gizzardを試してみようという人のために、RowzというMy-SQLと組み合わせたサンプルアプリケーションを公開しています。

URLhttp://github.com/twitter/gizzard

おすすめ記事

記事・ニュース一覧