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
-, ,

執筆者:

関連記事

no image

Carrierwaveでpdfのサムネイルを作成する

WindowsのRubyでExcelを操作~WIN32OLE

By: Môsieur J. version 9.1 – CC BY 2.0 目次1 WIN32OLE2 hello world3 Excelオブジェクトモデル4 絶対パスを取得するメソッ …

FullCalendarのagendaViewでselectの場所がずれる問題

  By: Ben Piddington 前回 Rails3.2でGoogle Calendarライクなカレンダーを使う〜fullcalendar-rails   gemは最新の1 …

Rails4とD3.jsでローソク足グラフを描く〜Rails準備編

By: Manuel Calavera – CC BY 2.0 前回 Rails4で複雑な検索〜Ransack こちらのサンプルを使用させてもらいました。 datawarehouse.we …

Rubyでdocxをいろいろ分析してみた

  目次1 解凍~minizip2 ファイルを開く~File.open3 全ファイルを解凍せずにzip内の必要なファイルだけを開く~zipruby4 置換~gsub5 xmlの操作~noko …