我在 Mongo 中有一个集合,其中包含一个特定键的重复项,我需要删除除一个之外的所有键。Map Reduce 解决方案似乎没有明确说明如何删除除一个重复项之外的所有重复项。我正在使用 Ruby,我怎样才能以某种有效的方式做到这一点?我目前的解决方案慢得令人难以置信!
我目前只是遍历重复键的数组并删除返回的第一个文档,但这仅在每个键最多有 1 个重复文档且速度非常慢的情况下才有效。
dupes.each do |key|
$mongodb.collection("some_collection").remove($mongodb.collection("some_collection").find({key: key}).first)
end