MongoDBin数量限制

1、查询语句本身其实是一个document, 最大为16MB(3.4,4.0 的限制,官方文档)

创新互联专注于东丰企业网站建设,响应式网站建设,商城网站建设。东丰网站建设公司,为东丰等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

2、查询语句本身,也就是{ '' : { '$in' : [] }}, 大小为 22字节

3、每增加一个字段名,增加一位字节

4、in里面每增加一个参数,大小固定增加11字节

5、如下:

mongos> Object.bsonsize([1])

16

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4] } })

74

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5] } })

85

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6] } })

96

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 69000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 6900000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 69000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 69000000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 6900000000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 690000000000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 69000000000000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 6900000000000000000000] } })

107

mongos> Object.bsonsize({ 'fieldOne' : { $in : [ 1, 2, 3, 4, 5, 6, 69000000000000000000000000] } })

107

数字不管多大,字节是一样的

mongos> Object.bsonsize({ 'a' : { '$in' : [1] }})

34

mongos> Object.bsonsize({ '' : { '$in' : [1] }})

33

mongos> Object.bsonsize({ '' : { '$in' : [] }})

22

The query document itself is 22 bytes;

Each byte of the field name adds a single byte;

Each number added to the $in clause adds 11 bytes.

mongos> 16*1024*1024

16777216

mongos> (16*1024*1024) - 22 - 1 

16777193

mongos> ((16*1024*1024) - 22 -1) / 11

1525199.3636363635

THE ANSWER: 1,525,198 (That's 1.5 million. That's pretty big.)


本文标题:MongoDBin数量限制
分享链接:http://pwwzsj.com/article/ghcdsc.html