- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
例如,我有 20 GB 数据的数据库,只有 2 GB 内存,交换已关闭。我能找到并插入数据吗?性能会有多差?
最佳答案
最好用谷歌搜索,但许多消息来源说,当您的工作集超出 RAM 大小时,性能会显着下降。
分片可能是一个有趣的选择,而不是添加更多的 RAM..
http://www.mongodb.org/display/DOCS/Checking+Server+Memory+Usage
http://blog.boxedice.com/2010/12/13/mongodb-monitoring-keep-in-it-ram/
http://groups.google.com/group/mongodb-user/browse_thread/thread/37f80ff39258e6f4
Can MongoDB work when size of database larger then RAM?
What does it mean to fit "working set" into RAM for MongoDB?
您可能还想了解去年 4square 中断的情况:
http://groups.google.com/group/mongodb-user/browse_thread/thread/528a94f287e9d77e
http://blog.foursquare.com/2010/10/05/so-that-was-a-bummer/
旁注:
您说“交换已关闭”...?为什么?在 UNIX 系统上,您应该始终有足够的交换空间!交换大小 = 1...2 倍 RAM 大小是个好主意。使用快速分区是个好主意。如果您的 UNIX 系统内存不足并且没有交换 .. 进程会莫名其妙地死掉,那么会发生非常糟糕的事情。这是一件非常糟糕的事情!尤其是在生产中。磁盘便宜!添加一个大方的交换分区! :-)
关于performance - 当mongodb内存不足时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7628618/
我创建了一个分支来开发新功能。由于这个新功能完全是作为一个新项目开发的,唯一可能的冲突来源是解决方案文件。 随着功能的开发,主分支更新了几次。当我完成开发和测试时,我做了: git checkout
我是一名优秀的程序员,十分优秀!