我正在测试 MongoDB 的档案数据。我们有一个包含 160M 行的集合。MongoDB 实例在 12 Gb 物理内存盒上占用 76.2 Gb 虚拟内存;-) 交换为 null。
我读到虚拟内存 = 物理 + 交换。
我的情况有什么问题?这是 mongoDB 本身的问题吗?
谢谢
Ada*_*m C 10
MongoDB 使用内存映射文件——它可能比您机器上可用的实际物理(或交换)文件大得多。因此,使用的总虚拟内存通常是当时磁盘上所有数据的大小。
驻留内存将是代表实际使用的工作集的统计数据,但取决于您在机器上的资源和使用模式,这将随着时间的推移而增长并接近主机上的总物理 RAM。基本上,除非操作系统认为需要调出旧数据(内存压力),否则它会留在 RAM 中。
当您重新启动 MongoDB 时,这基本上会从头开始。因此,如果您的实际工作数据集有一个已知的时间范围(假设您只使用过去 7 天),那么该时间段之后的数据集大小(假设定期、可预测的使用)将代表您的近似工作集大小内存。
更多信息可在此处的文档中找到:
http://www.mongodb.org/display/DOCS/Caching
http://www.mongodb.org/display/DOCS/Checking+Server+Memory+Usage
最后,MMS(免费的)可以很好地为您绘制地图 - 映射、虚拟、常驻和非映射以及大量其他统计信息(在每个图表上查找“i”以获取解释) .
归档时间: |
|
查看次数: |
9620 次 |
最近记录: |