C#-快速导入MongoDb
作者:互联网
我需要压缩大约200万个不同长度的字符串,并将其作为文件放入MongoDb GridFS中.
字符串当前存储在表的MS SQL TEXT字段中.我编写了一个示例应用程序来读取每一行,对其进行压缩并将其存储为GridFS文件.
有一个读取器和一个包含50个线程的线程池来存储结果.它可以工作,但是非常慢(平均每秒100条记录).
我想知道是否有任何方法可以更快地导入GridFS?
我在Windows上将MongoDb 1.6与C#和.NET中的MongoCSharp驱动程序配合使用.
解决方法:
我想我在运行一个非常简单的应用程序时对它进行了分析,从而发现了MongoDb CSharp驱动程序中的问题,该应用程序将1000个字符串放入1000个GridFS文件中.
事实证明,有97%的时间用于检查集合中是否存在具有相同文件名的文件.我在文件名字段上添加了索引,并且现在速度很快!
对我来说,问题是驱动程序是否需要保持文件名唯一并进行检查,如果缺少该文件,为什么不向其添加唯一索引呢?这是什么原因呢?
标签:gridfs,mongodb,c 来源: https://codeday.me/bug/20191105/1998224.html