mongodb中的数据库数据大小

mongodb中的数据库数据大小,mongodb,database,Mongodb,Database,使用以下命令,我可以获得特定集合的数据大小: db.collection.dataSize() 如何获取数据库的数据大小 在mongoshell使用以下命令: db.stats() 输出应如下所示: { "collections" : 3, "objects" : 80614, "dataSize" : 21069700, "storageSize" : 39845376, "numExtents" : 9, "indexes" : 2, "indexSize"

使用以下命令,我可以获得特定集合的数据大小:

db.collection.dataSize()

如何获取数据库的数据大小

在mongoshell使用以下命令:

 db.stats()
输出应如下所示:

{
  "collections" : 3,
  "objects" : 80614,
  "dataSize" : 21069700,
  "storageSize" : 39845376,
  "numExtents" : 9,
  "indexes" : 2,
  "indexSize" : 6012928,
  "ok" : 1
}
查看更多诊断命令。

在Java中使用db.getStats()

然后将得到如下结果:

serverUsed=127.0.0.1:27017
db=test
collections=3
objects=100004
avgObjSize=67.99876004959802
dataSize=6800148
storageSize=10633216
numExtents=9
indexes=1
indexSize=4406864
fileSize=50331648
nsSizeMB=16
ok=1.0
该命令返回给定数据库的不同存储统计信息。 正如关于您应该监控的不同MongoDB性能指标(使用MMAPv1)中所述,您提到的
dataSize
指标度量了数据库中所有文档和填充所占用的空间。 要获得数据库在磁盘上的“存储空间”,您应该查看与数据文件大小相对应的
fileSize
指标。只有在删除数据库时,它才会降低,并且在删除集合、文档或索引时不会受到影响

下面是一个图表,其中包含dbStats返回的不同重要存储度量:


还请注意,对于MMAPv1存储引擎,映射内存(
mem.mapped
metric)对应于用于将数据库映射到内存中的虚拟内存量,可以很好地近似数据库的总大小。您可以使用MongoDB中的。

访问此指标:

db.stats()         //For db status
db.<collectionname>.stats() //For collection status
$con= new Mongo()

$stats=$con->dbName->command(array('dbStats' => 1));  // for db.stats()

$stats=$con->dbName->command(array('collStats' => 'collection_name')); // for db.collection_name.stats()
在PHP中:

db.stats()         //For db status
db.<collectionname>.stats() //For collection status
$con= new Mongo()

$stats=$con->dbName->command(array('dbStats' => 1));  // for db.stats()

$stats=$con->dbName->command(array('collStats' => 'collection_name')); // for db.collection_name.stats()

datasize和storagesize数字是什么类型的?datasize和storagesize以字节为单位。看,我知道这个问题很老了。确实很旧,但是有没有办法将这些结果插入到不同的集合中?我希望每天都运行它来测量数据库的增长。