Railsで使えるGem

MongoidでMapReduceに挑戦中

投稿日:

MongoDBの薄い本の素材をMongoidでやろうとしたけど途中経過

MapReduceをやることの利点は、並列処理ができるということとSQLより柔軟な処理なできるということらしい(MongoDBにはまだ並列処理の機能はない)

 

Model

seed.db(test data)

rails cで以下を貼り付けるとlogstatというコレクションに集計データが挿入される

 

・・・しまった randの値を大きく取りすぎて集計の意味が無い!

 

今までのハマリポイント

  • map_reduceに渡すjavascriptのstringはすぐ実行する形で(無名関数でOK)。最初薄い本から直接コピペしてvar map = function(){….で渡していたら、うんともすんとも言わずログにも何も出ずで悩んだ。当たり前
  • out(replace: “logstat”)とかのシンボル:replaceとかがミススペルでもなぜかエラーがでなかった
  • まだなぜかRailsアプリからの実行がうまくいかない。。。情報が少なすぎるorz

 

酸っぱいブドウ

RailsからMongoDBを使う大きな利点のひとつはMongoDBがスキーマレスなのでRDBMSの制約を気にせずにRubyのレイヤーだけで柔軟に制約を書けることだという気がする

すると、Railsの場合は集計などの操作もrubyでやればいいので、ことさらに不細工なstringでjavascriptを突っ込んでまでやる必要はあまりないんじゃないだろうか

-Railsで使えるGem
-, ,

執筆者:

関連記事

Rails3.2からMongoDBを使ってアプリをつくってみる~mongoid

MongoDBはとても素直で扱いやすいということがわかってきたので、以前作成した郵便番号・住所の相互検索アプリをまたつくってみた 参照 MongoDBのチュートリアルをこなす KEN_ALL.CSVを …

Rails3でajaxでD&Dでまとめてファイルアップロード~jQueryFileUpload for Rails

TwitterBootstrapでアイコンが微妙な感じだったらFontAwesomeを試してみるといい

かもしれない fortawesome.github.com/Font-Awesome/ hallojsで使ってるのは上 github.com/bokmann/font-awesome-rails gi …

Deviseのユーザーと既存のMongoidモデルを関連づける

前提 Rails3.2でHTML5で取得した位置情報をMongoDBに保存してGoogleMapsでみる~mongoid、gmaps4rails Rails3.2+Mongoidでログイン機能~dev …

Rails3.2でJasmineをつかってCoffeeScriptをテスト~jasminerice

    #261 Testing JavaScript with Jasmine (revised)   addyosmani.github.com/backbone-f