CouchDB 中记录的大规模更新



我在CouchDB中有一个员工数据库,其中有超过10万条记录。我需要更新所有这些人的工资字段。我正在使用nodejs和cradle,下面的代码是正确的方法吗?如果这不是好的做法,还有其他选择吗?

var newsalary;
db.view('myviews/employees', function (err, res) {
res.forEach(function (row) {
    newsalary=row.salary+5;
    db.merge(row._id, {salary: newsalary},function (err, res) {}); // update self here
}); 
}); 

您是否尝试过一次保存多行?我没有使用过摇篮,但似乎它支持带有数组输入的 db.save。因此,您可以尝试批量保存(例如一次保存100/1000条记录)。否则,从当前的实现来看,它每次都会与每条记录的 db 交互,这在时间和 db 负载方面都是不好的。

相关内容

  • 没有找到相关文章

最新更新