Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pymongo插入W=2,J=真实加速_Python_Mongodb - Fatal编程技术网

Python pymongo插入W=2,J=真实加速

Python pymongo插入W=2,J=真实加速,python,mongodb,Python,Mongodb,我正在使用python 2.7.8和pymongo 2.7 mongoDB服务器是一个ReplicaSet group one primary 2 secondary。 mognodb服务器构建在AWS服务器EBS:500GB、IOPS3000上 我想知道有没有办法加快插入速度。当W=2时,j=True 使用pymongo插入一百万个文件需要很多时间 我知道如果我使用W=0,它会加速,但这并不安全 有什么建议吗?请帮助我,谢谢。您可以使用无序或有序 这大大加快了速度。也许你也可以看看我的皮蒙戈散

我正在使用python 2.7.8和pymongo 2.7 mongoDB服务器是一个ReplicaSet group one primary 2 secondary。 mognodb服务器构建在AWS服务器EBS:500GB、IOPS3000上

我想知道有没有办法加快插入速度。当W=2时,j=True 使用pymongo插入一百万个文件需要很多时间 我知道如果我使用W=0,它会加速,但这并不安全
有什么建议吗?请帮助我,谢谢。

您可以使用无序或有序


这大大加快了速度。也许你也可以看看我的皮蒙戈散装业务包装机

不推荐使用设置
W=0
。这是MongoDB的旧型号(3.0之前),他们不建议再使用它

使用MongoDB作为文件存储系统也不是一个好主意;但是,如果情况属实,你可以考虑使用。 我假设您正在尝试某种大规模导入,而您现在没有很多(或任何)读者;在这种情况下,如果任何读者看到一些文档,而不是全部文档,您都可以

您有两个选择:

  • 设置
    j=False
    。MongoDB将更快地返回(在文档提交到日志之前),如果数据库崩溃,文档可能会丢失
  • 设置
    W=1
    。如果复制速度较慢,这将只等待其中一个节点(主节点)拥有数据后再返回

如果您确实需要很强的一致性要求(读者看到目前插入的所有内容),这两个选项都不会有帮助。

谢谢您的帮助@周辰彩 也许你可以将我的答案标记为可接受的答案,因为这里的人似乎不太喜欢它,并且对它进行了降级,尽管我提供的链接指向mongoDB的官方网站,并且永远不会消亡,直到产品以任何方式消亡:-)