解决mongodb中那种超过最大限制的方法

  介绍

小编给大家分享一下解决mongodb中那种超过最大限制的方法,相信大部分人都还不怎么了解,因此分享这边文章给大家学习,希望大家阅读完这篇文章后大所收获、下面让我们一起去学习方法吧!

<强>问题描述

当我对一个没有建索引的字段做发现,然后做排序的时候,可能触发的大小来排序的32 mb限制,例如:

db.getCollection(& # 39;酒店# 39;);({“time_stamp": {“lte"美元:1485878400}}).sort ({“time_stamp": 1})

错误如下:

错误:,错误:,{   “美元err",:,“Executor 错误:,Overflow  sort  stage  buffered  data  usage  of  33558548, bytes  exceeds  internal    limit  of  33554432, bytes",   “code":, 17144   }

<>强两种解决方法

解决方法一:对需要排序的字段建索引

db.stotal.ensureIndex({& # 39;类型# 39;:,1})

解决方法二:修改默认配置,把排序时可以用的内存设置大点:

db.adminCommand ({setParameter: 1, internalQueryExecMaxBlockingSortBytes: 335544320})

<强>这两种解决方法各有利弊:

方法一:增加了索引会导致数据写入变慢,存储占用变多;

方法二:不建索引修改默认配置,会导致排序的时候占用更多的内存。

以上是解决mongodb中那种超过最大限制的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

解决mongodb中那种超过最大限制的方法