zoukankan      html  css  js  c++  java
  • MongoDB in 数量限制

    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.)

  • 相关阅读:
    net中System.Security.Cryptography 命名空间 下的加密算法
    关于如何生成代码的帮助文档的链接
    Application.EnableVisualStyles();
    VS2010里属性窗口中的生成操作
    把普通的git库变成bare库
    MultiTouch camera controls source code
    android onTouch()与onTouchEvent()的区别
    iOS开发中常见的语句@synthesize obj = _obj 的意义详解
    java nio 快速read大文件
    使用ndk standalone工具链来编译某个平台下的库
  • 原文地址:https://www.cnblogs.com/hankyoon/p/12200150.html
Copyright © 2011-2022 走看看