首页 > 解决方案 > .Net - 如何在并行批处理或多个实例中处理大量 MongoDB 文档

问题描述

我需要每天从一个集合中分批检索和处理大约 200k 个文档(我尝试将所有内容加载到列表中,但这是个坏主意)。我需要做的就是获取文档,提取记录并在本地存储在文本文件中。我正在尝试这个:

var options = new FindOptions
{                   
    BatchSize = mySize
};
using (var cursor = collection.Find(filter, 
       options).ToCursor())
{                   
    while (cursor.MoveNext())
    {
        var batch = cursor.Current.ToList();
        // my extraction logic
    }
}

这似乎对我有用,我想知道如何在多个任务或实例级别运行批处理以提高性能。另外,除了使用游标之外,还有更好的方法来加载和处理文档吗?

标签: c#.netmongodbmongodb-query

解决方案


推荐阅读