我在 mongodb 中有一个 >6M 的文档集合。其中一个字段(下例中的 field1 和 field2)是字符串值(mongodb 中的类型 2)。
我的问题是我想将它们解析为浮点值(所有值都是 parseFloat-able)。我在 SO 中找到了这个片段。但这似乎不是处理 6M 文档集合的好方法。
db.collection.find({field1: {$type:1}}).forEach(function(data) {
db.collection.update(
{_id:data._id},
{$set:{
field1: parseFloat(data.field1),
field2: parseFloat(data.field2)}
}
)
})
有什么方法可以在不降低服务器速度的情况下转换我的两个字段?
使用 db.collection.getIndexes() 和 db.collection.getIndexKeys() 表示我的两个字段已编入索引。