Twitterのリアルタイムマルチテナント分散データベースManhattan
Twitter EngineeringはManhattanについて詳細を発表した。Manhattanはリアルタイムマルチテナント分散データベースだ。
開発動機について、ManhattanプロジェクトのリーダーをつとめるPeter Schuller氏は次のように言う。
ここ数年、秒間100万単位の問い合わせを処理し、リアルタイム環境で遅延がほとんどないデータベースが必要になってきました。可用性と性能がきわめて重要になってきたのです。
Manhattanは2年間、運用環境に配備されており、サービスとしてのストレージの上でキー/バリューのインターフェースを公開し、エッジとやり取りするためのグラフベースのインターフェースも提供する。さらに、Hadoopのよるバッチ処理や時系列カウンターサービスなど追加のサービスもManhattan上に構築されている。
Cade Metz氏 (Wired BusinessおよびWired Enterpriseの編集者)によれば、このシステムは、秒間6000ツイート、全世界2億4000万人を処理するために設計された。また、Twitterが厳密な一貫性のあるデータベースを必要としていることも強調されている。
多くのウェブ系企業と同様、Twitterは過去、Cassandraに依存していました。もともとFacebookが開発したCassandraは、数千台のマシンに分散してデータを保持するように設計されたNoSQLデータベースのひとつです。Cassandraでも問題なく処理できていましたが、Twitterはこのままでは新しいマシン上に拡張していくのが難しいと判断しました。
GigaomのDerrick Harris氏がデータベース設計に関する3つのレッスンと題してTwitterのManhattanを開発した3人のエンジニア(Chris Goffinet氏, Peter Schuller氏、Boaz Avital氏)に話を聞いた。この中で、ManhattanがTwitterの内部だけでなくより幅広く使われるようになるかどうかという質問に対しては、次のようなやり取りが行われた。
Manhattanはいつオープンソースになれば、Twitterのような状況ではないアプリケーションを抱えている幅広い開発者にとっても可能な限りの利便性を提供できるだろう、とSchuller氏は言った。
TwitterのManhattanに関する計画はとても興味深いものになるだろう。同社は強くオープンソースへのコミットメントを打ち出している。近い将来、開発チームはホワイトペーパーを公表して技術的な詳細を明らかにするつもりだ。
特集コンテンツ一覧
.NETでドメイン駆動開発~ValueObject後編~
上坂 貴志 - (株)ネクストスケープ 2014年3月25日 午後10時32分
.NETでドメイン駆動開発~ValueObject 前編~
上坂 貴志 - (株)ネクストスケープ 2014年3月19日 午後8時59分
BackboneとAngularを比較する
Victor Savkin 2013年12月23日 午後8時23分
Microsoftの技術の活用方法
Jonathan Allen 2013年12月1日 午後7時43分
こんにちは
コメントするには InfoQアカウントの登録 または ログイン が必要です。InfoQ に登録するとさまざまなことができます。アカウント登録をしてInfoQをお楽しみください。
あなたの意見をお聞かせください。