有一个帐户文档。这个文件有1k个席位。对于每个席位,我们发出一个文档。自然,你会期望这会很慢。地图功能像这样运行:Couchdb超慢视图,100%cpu使用率
function(doc) {
if (doc.type == 'account') {
doc.seats.map(function(seat) {
emit(seat.userID, doc))
}
}
}
但是,删除doc.seats,然后发布更小的文档似乎没有帮助。
function(doc) {
if (doc.type == 'account') {
doc.seats.map(function(seat) {
delete doc.seats
emit(seat.userID, doc))
}
}
}
有没有人明白为什么删除座位不加快速度?我们唯一可以加速的方式是不发布doc对象,只是发布一个id。
function(doc) {
if (doc.type == 'account') {
doc.seats.map(function(seat) {
emit(seat.userID, doc.id))
}
}
}
这是一个循环在沙发视图地图上的文档的数组问题?
就数据而言,原始文档是99%的座位数组。所以如果我发出减去该数组的文档,是不是应该给予提振? - 其实,回头看我的代码,删除可能不会像我期望的那样工作,因为我正在运行它。map()方法 – Elliot
啊,我相信doc是不可变的。查看我的更新。 – sarwar