CNode

node+mongoose 批量处理数据用什么?

Hheixiaoshan发布于12 年前最后回复10 年前11 回复16685 浏览0 收藏

大神们,你们批量添加是用什么? foreach 去循环遍历吗? 这个多个人同时去进行添加会不会对性能/内存有很大的影响啊 除了foreach还有更优的方案吗?

据说全部都是用foreach哎

查看回复

回复 (11)

S
simongfxu#1·12 年前

forEach肯定不行,至少得用async。 不过现在还真没什么好用的,自己写了个不过用起来不方便。

B
bnuhero#2·12 年前

mongodb 2.6是有bulk.insert()方法的,不知道mongoose是否支持。

B
bnuhero#5·12 年前
引用 bnuheromongodb 2.6是有bulk.insert()方法的,不知道mongoose是否支持。

@heixiaoshan 你确信吗?或者说,你的批量添加是指什么?

根据Bulk.insert文档中的例子:

var bulk = db.items.initializeUnorderedBulkOp();
bulk.insert( { item: "abc123", defaultQty: 100, status: "A", points: 100 } );
bulk.insert( { item: "ijk123", defaultQty: 200, status: "A", points: 200 } );
bulk.insert( { item: "mop123", defaultQty: 0, status: "P", points: 0 } );
bulk.execute();

这就是一次添加几条记录的操作。

H
heixiaoshan#6·12 年前
引用 bnuheromongodb 2.6是有bulk.insert()方法的,不知道mongoose是否支持。

@bnuhero 应该说场景不符吧。这种类似事物的处理。

S
SoaringTiger#7·12 年前

Mongoose 4.x版本里会加上 Bulk, https://github.com/LearnBoost/mongoose/issues/2366

K
kenticny#8·12 年前

记得某个版本以后的mongdb的insert方法支持数组了吧,mongoose不知道可不可以啊

I
ijse#10·11 年前

那么只好用消息队列了。。。

W
wujohns#11·10 年前
参与回复
登录后即可参与回复。登录