MongoDB 聚合管道的优化与局限

$out
将聚合管道中的文档,写入到一个新的集合 output 中。如果 output 已存在且有数据,则原有的数据会被清空

db.transactions.aggregate([
    {
        $group: {
            _id: "$currency",
            symbols: {
                $push: "$symbol"
            }
        }
    },
    {
        $out: "output"
    }
])
> db.output.find()
{ "_id" : "USD", "symbols" : [ "AMZN", "AAPL" ] }
{ "_id" : "CNY", "symbols" : [ "600519" ] }

聚合操作的选项设置

  • allowDiskUse
    默认情况下,每个管道的内存操作不能超过100M,如果允许超出的话,可以设置 allowDiskUse 为 true
    临时文件,默认会被写入到 dbPath下的_tmp文件夹,dbPath的默认值为 /data/db
上一篇:流畅的python学习笔记(三):数据结构(1)


下一篇:IsoAlgo Symbols