明日の勉強会の準備をしていたら、今回の本の範囲外ですが、ちゃんとまとめておかないと、というところを思い出したので書いておきます。だいぶ前に書いた気がしないでもないけど。 CouchDBではMapReduceを工夫することで関係モデルの結合演算を扱えます。なぜかKVSと一緒くたにされて、JOINができないから、だのなんだのいわれますが、SQLの関係演算の本質(? ... いや知らないけど)を見極めていれば、CouchDBのMapReduceであらかたの演算ができます。 という話。だったら非リレーショナルデータベースっていうなよ、という話は抜きです。だってリレーショナルデータベースっていうとめんどくさいことになるんだもの。 まずは普通に外部結合 ブログエントリとブログのコメントのリレーション、だとエンタープライズ脳の人が納得しないようなので、取引伝票と取引明細でいきます。 まずは、取引伝票 {