RelaxCafe@CouchDB.break2終了
参加された皆様お疲れ様でした。
05. Design Document
id:mkouheiさん。デザインドキュメントはアプリケーションだ!という話。0.7かな、その辺りを触っていたときは、ああ、クエリの手段ね、という感覚でいましたが、もう最近ではアプリケーション。
show/list を使えば、アプリケーションサーバーなんていらない!
全然意識してなかったですが、「show/list はGET onlyなので、副作用がない」という話を聞いて、あーなるほど、と思いました。これ重要だと思います。
あと、最後の方ででてきた、_design/foo はOKだが foo/bar はNGで foo%2Fbar にしなさい、という%2F問題。
Relax Time
id:z-ohnamiさん。心が疲れたときはお酒を飲むべし、というスピリッツの話。ジンとラムとウォッカとテキーラは全部スピリッツというカテゴリらしい。というか、普段都内にでないからか、有楽町のビックカメラ、新宿のTOKYU HANDSにミニボトルが売っているなんてことをしって驚愕。 何屋だよww 都会ってこわい。
06. Finding Your Data with Views
私の担当分。資料はSlideshareにあげときました。
が、基本はブラウザで動作を確認しながら話をしていたので、資料だけ見ても、、、という感じかもしれません。でも、正直本の内容を読んでも、これじゃわかんねーよ、という具合だったので、手を動かすのが吉かと思います。
個人的には、MapReduceの実装のところは、dWの第3回を書くときに、ソースとにらめっこしながら大格闘して、結局Reduce/Rereduceの仕組みを確認したものの、記事としてまとめるところをあきらめたのですが、今回本を読んで、「B+-TreeのLeafにMapの結果、Non-LeafにReduceの結果を保存するよ」というところをちゃんと確認できたのが大きかったです。
半年というか10ヶ月ぐらい前。
rereduce がいつ起こるのか?というのは非常に難しい問題です。内部のbtreeの構造に依存し、完全にrereduceの発生を予測してロジックを制御するのは困難です。
今ならRereduceを制御できそうな、、、といいたいところですが、KeyだけでなくRevも使っているのでやっぱり難しいか。
というか、最近全然触っていませんが、Hadoop/HDFS or HBaseのクラスタ組むときに、B+-TreeでReduce/Combineを実行させるようなトポロジって組めないんですかね?CouchDBのMapReduceの実装を読んで、MapReduceをここまでうまく使っているのは、「うわ、すごっ」と思いました。MapReduce ってどっちかというとバッチ向きかなーと思ってたんですが、この発想だとB+-Treeの中間ノードからストリーム処理をするとか出来そうな気がする。
そのほか(1)
CouchDBのいいところはブラウザがあれば確認できるのでおのおののブラウザでMacbookにアクセスして試してもらおうかと思ってたのですが、時間切れ。というか無線AP化の方法がよくなくて? うまくつながらなかった。いや本当は、サンプルデータを作るのが面倒だったので、それぞれFutonを試しがてらDBにデータ適当に登録してもらって、レプリケーションでかき集める、ということをしたかったんですがうまくいかず。
これをやると、いかにも勉強会に参加している、って感じになるし、各自が自分のノートPCにCouchDBを入れていたら、デモの結果は帰り際に反対向きのレプリケーションで持ち帰る、ってことが簡単にできるんじゃん、と思って。「参加型セミナーにおける教材配布の手法」てな具合で特許でも申請すればいいのかな、と思ったところで、特許には興味がないので書いちゃいました。
今度機会があるときにやりたいです。今だとまだ無線APの構成が面倒ですが、近い将来Wi-Fiのすれ違い通信(違 も規格としてできるようになるそうなので、Local Web Platformすげーってなるんじゃないかなぁーとか妄想しちゃいます。
そのほか(2)
2007年のRubyKaigiでもらった「No Ruby, No Life」バッグをルノアールに忘れるという始末。中にはMacbookの入っていた。。。おそらく、Ruby to JavaScript なんてふざけたことをやっているから罰が当たったんだと思いました。ごめんなさい、ごめんなさい、ごめんなさい。
Rubyも書きますというか、そのうち、CouchDBのクエリサーバーをRubyで記述する方法について、あとでエントリ書きますよ!*1
と心に誓ったので、ルノアールに戻ったところ、無事発見できました。
懇親会
http://r.gnavi.co.jp/g650202/ でやりました。予約をするときに、「4-8人ぐらいで21:00ごろ行きます」と当日の昼間に電話したら、「人数決まった時点で教えていただければ大丈夫ですよ、席は空けておくので」とすごくいい対応をしてもらった。コミュニティ系の集まりだと、人数が前後するのは普通かと思うので、こういうのはすごく助かる。
ただ、遅い時間だったため、一押しメニューが売り切れだったのは残念orz
*1:前に公開されたやつがあったんだが、最近ない