Scalaris - TransactionalなKey/value store

Scalaris: reliable transactional p2p key/value storeを読んでみた。サブタイトルは"Web 2.0 Hosting with Erlang and Java"だってさ。ソースも公開されている。

論文に書いてあること(大体)

  • key/value storage
  • no hashing(Chord), just a naming rule
    • Dynamoなどだと hash( 'key name' )でChordにつっこむ
    • Scalarisだと 1
  • routing(Chord#)がちょと違うらしい
  • always writable, scalable, consistent
  • transactional write(ACID), MPC with Quorum majority
    • Quorum-basedなレプリケーションをマルチフェーズコミットで実現(PDFにいい絵があります)
  • wikipediaでテストアプリ動かしてみた
バックエンド バックエンド性能 サーバ数 フロントエンド
実験サイト Scalaris 2500tps 16 Java(Jetty)
本家 MySQL 2000tps 200 PHP
    • 本家は20000台のプロキシがいる

関係ありそなプロダクト

    • Cassandra, Google Megastore, Kai, Dynamo, ...?

追記

  • つい最近も発表があったみたい。