如何在Mongodb中获取单个文档的大小?

1949

我遇到了mongo的奇怪行为,我想澄清一下...
我的要求很简单:我想在集合中获取单个文档的大小。我发现了两种可能的解决方案:

  • Object.bsonsize-一些应返回字节大小的javascript方法
  • db.collection.stats()-其中有一行“ avgObjSize”,可在数据上生成一些“聚合的”(平均)大小视图。它仅表示单个文档的平均大小。

  • 当我仅使用一个文档创建测试集合时,两个函数都返回不同的值。这怎么可能?
    是否存在其他获取mongo文档大小的方法?

在这里,我提供一些我执行测试的代码:

  1. 我创建了新的数据库“ test”并输入仅具有一个属性的简单文档:type:“ auto”

    db.test.insert({type:"auto"})
    
  2. stats()函数调用的输出:db.test.stats()

    { 
      "ns" : "test.test",
      "count" : 1,
      "size" : 40,
      "avgObjSize" : 40,
      "storageSize" : 4096,
      "numExtents" : 1,
      "nindexes" : 1,
      "lastExtentSize" : 4096,
      "paddingFactor" : 1,
      "systemFlags" : 1,
      "userFlags" : 0,
      "totalIndexSize" : 8176,
      "indexSizes" : {
            "_id_" : 8176
    },
    "ok" : 1
    

    }

  3. bsonsize函数调用的输出:Object.bsonsize(db.test.find({test:“ auto”}))

    481
    
1949

在的上一个调用中Object.bsonsize(),Mongodb返回了光标的大小,而不是文档的大小。

正确的方法是使用此命令:

Object.bsonsize(db.test.findOne())

使用findOne(),您可以定义对特定文档的查询:

Object.bsonsize(db.test.findOne({type:"auto"}))

这将返回特定文档的正确大小(以字节为单位)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在mongodb中获取文档字段的大小(以字节为单位)

来自分类Dev

如何在laravel mongodb jenssegers 中获取子文档大小(计数)

来自分类Dev

如何在MongoDB聚合管道中隐藏单个子文档?

来自分类Dev

如何在mongodb中查找数组大小大于1的文档

来自分类Dev

如何在MongoDB中查找大于文档大小的数组

来自分类Dev

如何在Python中从CWD获取单个文件大小

来自分类Dev

如何在MongoDB集合中查找与给定条件匹配的文档和单个子文档

来自分类Dev

如何在MongoDB中获取最小值的文档?

来自分类Dev

如何在MongoDB中针对不同的文档大小计算文档插入时间

来自分类Dev

如何在MongoDB中查询数组中的单个嵌入式文档?

来自分类Dev

如何在mongoDB中对文档进行分组并获取文档计数以及获取子文档的平均值

来自分类Dev

如何在MongoDB中的单个集合中找到文档之间的集合的交集?

来自分类Dev

MongoDB和PyMongo-如何在单个文档字段中连接字符串

来自分类Dev

如何在文档中查找元素的大小

来自分类Dev

如何在Inkscape中管理文档大小?

来自分类Dev

如何在Firestore中获取单个文档并将其显示在站点上

来自分类Dev

如何在MongoDB中查找数组大小在一定范围内的文档?

来自分类Dev

如何在MongoDB中查找数组大小在一定范围内的文档?

来自分类Dev

如何在angular2中获取当前文档大小

来自分类Dev

如何在mongoose / mongodb中的文档中获取对象数组中的对象?

来自分类Dev

如何在mongodb中的文档中获取数组字段中的特定数据?

来自分类Dev

如何在mongodb中获取子文档中的最后一个元素

来自分类Dev

如何在MongoDB中的嵌套数组中获取子文档?

来自分类Dev

如何使用Go从MongoDB中删除单个文档

来自分类Dev

如何在MongoDB中覆盖文档

来自分类Dev

如何在mongodb中跳过文档

来自分类Dev

如何在mongodb中查询嵌套文档?

来自分类Dev

如何在mongodb中更新子文档

来自分类Dev

如何在MongoDB中覆盖文档

Related 相关文章

  1. 1

    如何在mongodb中获取文档字段的大小(以字节为单位)

  2. 2

    如何在laravel mongodb jenssegers 中获取子文档大小(计数)

  3. 3

    如何在MongoDB聚合管道中隐藏单个子文档?

  4. 4

    如何在mongodb中查找数组大小大于1的文档

  5. 5

    如何在MongoDB中查找大于文档大小的数组

  6. 6

    如何在Python中从CWD获取单个文件大小

  7. 7

    如何在MongoDB集合中查找与给定条件匹配的文档和单个子文档

  8. 8

    如何在MongoDB中获取最小值的文档?

  9. 9

    如何在MongoDB中针对不同的文档大小计算文档插入时间

  10. 10

    如何在MongoDB中查询数组中的单个嵌入式文档?

  11. 11

    如何在mongoDB中对文档进行分组并获取文档计数以及获取子文档的平均值

  12. 12

    如何在MongoDB中的单个集合中找到文档之间的集合的交集?

  13. 13

    MongoDB和PyMongo-如何在单个文档字段中连接字符串

  14. 14

    如何在文档中查找元素的大小

  15. 15

    如何在Inkscape中管理文档大小?

  16. 16

    如何在Firestore中获取单个文档并将其显示在站点上

  17. 17

    如何在MongoDB中查找数组大小在一定范围内的文档?

  18. 18

    如何在MongoDB中查找数组大小在一定范围内的文档?

  19. 19

    如何在angular2中获取当前文档大小

  20. 20

    如何在mongoose / mongodb中的文档中获取对象数组中的对象?

  21. 21

    如何在mongodb中的文档中获取数组字段中的特定数据?

  22. 22

    如何在mongodb中获取子文档中的最后一个元素

  23. 23

    如何在MongoDB中的嵌套数组中获取子文档?

  24. 24

    如何使用Go从MongoDB中删除单个文档

  25. 25

    如何在MongoDB中覆盖文档

  26. 26

    如何在mongodb中跳过文档

  27. 27

    如何在mongodb中查询嵌套文档?

  28. 28

    如何在mongodb中更新子文档

  29. 29

    如何在MongoDB中覆盖文档

热门标签

归档