1. 程式人生 > >MongoDB文件翻譯-聚集-聚集管道的限制

MongoDB文件翻譯-聚集-聚集管道的限制

聚集管道的限制

aggregate命令的聚集操作有如下限制:

結果大小限制

版本2.6的改動。

從MongoDB 2.6起,aggregate命令可以返回一個遊標,或者把結果保持在集合裡。當返回一個遊標或者把結果儲存在集合中時,結果集中的每一個文件的大小受限於BSON文件大小,當前是16M。如果有單個文件超出BSON文件大小限制,該命令會產生一個錯誤。該限制只適用於返回的文件,在管道處理過程中,文件可以超出這個大小。從MongoDB 2.6起,db.collection.aggregate()預設返回一個遊標。

如果不指定遊標選項,或者把結果儲存在一個集合中,aggregate

命令返回單個包含了結果集所有欄位的BSON文件。這樣的化,如果結果集的大小超出了BSON文件大小限制,該命令就會產生一個錯誤。

早期版本的aggregate命令只能返回一個包含結果集的BSON文件,如果結果集的總大小超出了BSON文件大小限制,將會產生一個錯誤。

記憶體限制

版本2.6的改動。

管道階段有記憶體大小100M的限制。如果有一個階段超出了這個限制,MongoDB將會產生一個錯誤。要處理大的資料集,使用allowDiskuse選項來允許聚集管道階段把資料寫入到臨時檔案中。