私はこれがかなりの回数議論されていることを知っていますが、私のシナリオは、レート制限チェックを無効にすることを叫ぶと思います:
ドキュメントの形式は次のとおりです。
{ prefix: "004945", country: "Germany", type: "Mobile", carrier: "OrangeTel", price: "34"}
{ prefix: "004946", country: "Germany", type: "Mobile", carrier: "SomeOther", price: "46"}
.
.
.
{ prefix: "00807", country: "Unknown", type: "Satelite", carrier: "Inmarsat", price: "123"}
[country, type, carrier]
これらのプレフィックスの配列をいくつかのキーまたはキー[country, type]
で取得したい
だから私はこのようにマッピングします:
emit( [country, type, carrier],[prefix] )
そして私はこのように減らします:
reduce: function(keys, values, rereduce) {
return values.reduce(function(a, b) {return a.concat(b);})
}
問題は、明らかに同じ量のデータを異なる形で返すため、縮小率が十分でないことです。多くの要素を含むリストを変換し、それぞれにデータがほとんどなく、それぞれが多くのデータを含む少数の要素のリストに変換します。
リスト関数などで回避できることはわかっていますが、チェックを無効にするシナリオは有効だと思います。また、存在する場合は、それらのドキュメントの構造を変更せずに map-reduce ソリューションを使用するアイデアをお願いします。ありがとう。