ページ

2010年8月11日

KeyValueストアとか・・・

あまり、会社の製品について書いたりしていないので、ちょっとだけ。もともとの発端は、「最近、NoSQLとかKey Value Storeとか流行っているよね。でも、それらがどう分散されているかと言うことを除けば、アリエルってkey value store好きだよね。もしくは大谷さんが好きなのか・・・」と言うCTOのお言葉です。多分、僕じゃなくってアリエルです。

で、時はさかのぼること10年前。アリエルはP2Pのグループウェアを作っていました。その時の文書(スケジュールとか掲示板の文書とか)は、それぞれにキーが割り振られていて、XMLのドキュメントとして扱っていました。大昔に、Unix Magazineにそのへんの仕組みを書いたことがありますが、多分、忘れ去られています。この場合の文書が、Valueに相当します。まあ、アリエルのシステムが特異というわけじゃなく、割と一般的にだと信じています。

さて、アリエルの最初の製品はP2Pのシステムです。これは、Key Value Storeがインターネットに分散されていると言うことです。で、最初にアリエルがつまずいたところが、一覧で見たときにパフォーマンスが追いつかないとことです。 ちょっと前のKey Valueの動向を見ていていると、昔の記憶がよみがえるようで感慨深いです。

で、文書という概念、もしくはValueという概念は今の製品にも受け継がれているのですが、これはもっと古いです。ZopeのZODBというオブジェクトデータベース由来だという噂もありますが、それは嘘です。基本的にはLotus Notes/Domino由来です。新入社員として入ったせいで、大きな呪縛があるのかも知れません。Notesにはとても影響されています。

Key Value Storeは最近出てきた凄いものという受けとめ方もありますが、確かにCassandraとかVoltDBとか面白いんですが、Key Value Store自体はdbmとか大昔からある仕組みです。それをどう使うかは新しいかも知れません。新しいものを追い求めるのも大事ですが、ちょっと立ち止まるのもまた面白いかも。 

とか、そんな昔話はどうでもよくって、今作っている製品の仕組みを書こうと思っていたんだけど、それはまた、今度。 



0 件のコメント: