Tôi khuyên bạn nên sử dụng khung tổng hợp:
db.full_set.aggregate([ { $match: { date: "20120105" } }, { $out: "subset" } ])
Nó hoạt động nhanh hơn khoảng 100 lần so với forEach
Ít nhất là trong trường hợp của tôi. Điều này là do toàn bộ đường ống tổng hợp chạy trong quy trình mongod, trong khi giải pháp dựa trên find()
và insert()
phải gửi tất cả các tài liệu từ máy chủ đến máy khách và sau đó quay lại. Điều này có một hình phạt về hiệu suất, ngay cả khi máy chủ và máy khách trên cùng một máy.