カラクリサイクル

『輝かしい青春』なんて失かった人の雑記

CouchDBがすごく面白そうな件

概要: CouchDBに今更ながら興味を持った。


という話。


さきに目を通しておくと良いもの

CouchDBとは何か

まず、色々ドキュメントやら何やらを読んで感じたのは、

  1. CouchDBとは
  2. 分散JSONストレージ
  3. ではないか?

ということ。

もうちょっと分かりやすく言うと、CouchDBとは、

  1. JSONに特化し
  2. JavascriptでMapReduceできる
  3. distributed な Amazon S3

みたいなもんなのかなーと。

というのも、CouchDBはスキーマレス、というよりは、 JSONなら何でも突っ込める感じだし、 RDBMSでいうテーブルに相当するものがない。

んで次に面白いな、と思ったのは、

  • JavascriptでMapReduceできる

という点。

Kyoto TycoonのLua拡張でも同じような感想を持ったんだけど、 データベースでスクリプティングできるって何それ素敵やん、 という感じ。

あと、プログラマーにとっては、

  • スクリプティングできる=なんでもできる!

というコトなので、それはそれで面白いなーと。

あと、今の時代、分散できないデータベース(w という風潮があるような気がしているので、 その辺りもいい感じだなぁと。

CouchDBに上書きは無い。ただ、リビジョンが増えるだけだ

あともう一個面白いというか便利そうだなーと思ったのが、

  • CouchDBには上書きがなく
  • すべてはリビジョンで管理される

という点。

無論、既存のKVSとかを使うみたく、 上書き前提で使うときにはめんどい仕様だと思うんだけど、 例えば、バージョン管理付きのWikiとか作りたいなー、 という時には便利じゃね? と僕は思う。

ちなみに今現在のVersion(1.3.0)では、 なにやら過去のリビジョンが必要ない場合には吹っ飛ばせるもよう。 もちろん過去のリビジョンが必要なのに吹っ飛ばすとアレだけども。

まあそういう所も、結構いい感じだなーと、

ちなみにCouchbaseとの関係について

あと、僕はCouchDBに乗り遅れた人間なので、 あんまり詳しくはないのだけれども、CouchDBには、

という親戚がいるっぽい。

で、このCouchbaseの方は、CouchDBの中の人が、 CouchDBの開発で得た知見等をもとに、 Membaseやら何やらと悪魔合体させて作ったそうなんだけど、 なんかCouchbaseを生み出した際になんか揉めたそうな。 CouchDBの開発はビジネスにならねー、みたいな?

まあそんな感じでごたごたしてた時期があったようなんだけど、 僕はその当時CouchDBは名前ぐらいしか知らなかったっぽいので、 ほとんど何がどうだ、って知りはしないんですけどね(>_<;)

いじょ

という感じでまあ最近CouchDBに興味津々なにゃるらさんでした。

まあ今までこういうゆるい感じで空繰再繰カラクリサイクルを更新することって無かったんだけど、Tumblrに引っ越してから、 その辺り身構えがなくなった感じがする。

っていうかまあローカルでEmacs立ち上げてーとか、 iTerm2でnimで生成して出力チェックしてrsyncで同期してー、とか、 そういうめんどい手順がなくなったのは、いい感じだなぁと思います。

というコトでいじょ。おわり。