当社MRコードが独立してマップ低減されているデータの有用な診断データ構造を生成し、当社の地図減らすジョブの開発中。これらのデータをmapReduceというコードに簡単に取り込む方法や、Mongoでそれらを保持する方法はありますか?ログファイルへの書き込みは、(a)既に多くのデータが存在し、(b)診断情報が高度に構造化されており、実際にはクエリを実行したいそれ。のMongoDB:MapReduceの副作用
私の調査は、これまでのMRデータ構造はどのようにメモリ内のデータ構造は、「グローバル」スコープにフックを含め、失われている(シリアライズを経由して)値によって渡されることを示唆しています。ネームスペースはメインのJSサーバー側のネームスペースから分離されているので、dbeval
はそれらに到達していないようです(または、少なくとも、どこを見るかはわかりません)。すべてのデータベースオブジェクトおよび機能が存在するが、10genはそれらの使用を防ぐために(紛らわしい)エラーメッセージを生成して、最後のではなく、少なくとも、例えば、typeof coll.insert === 'function'
がtrue
である関数ではない約coll.insert
。 MongoDBの中のロギング/デバッグサポートはかなり限られているため
明確にするために、私は、単一ノードでの開発のためにこれを行うに興味があります。この種の副作用は本番環境では良くありません。
正確にどのような種類のデータを生成していますか? MRの出力は、コレクション内で永続化することができます.C#では、次のように指定します:MyInputCollection.MapReduce(map、reduce、MapReduceOptions.SetOutput( "MyOutputCollection"));その後、永続的なコレクション 'MyOutputCollection'から読み取ります。 –
MR出力から独立した情報を保存します。コードで処理したい詳細な構造化されたロギング/ベンチマーク情報など、データの排出とみなして、ログファイルに格納しないようにします。 – Sim
ログ収集のためにキャップ付きのコレクションを使用しようとしましたが、なぜcoll.insertが失敗するのかよくわかりません。 –