MongoDB批量写入上限由maxWriteBatchSize定义,3.6以前为1,000,3.6以后为100,000。
查看maxWriteBatchSize
执行命令
db.runCommand({hello: 1})
结果为"maxWriteBatchSize": 100000
[
{
"connectionId": 8,
"isWritablePrimary": true,
"localTime": {"$date": "2022-08-13T00:15:19.241Z"},
"logicalSessionTimeoutMinutes": 30,
"maxBsonObjectSize": 16777216,
"maxMessageSizeBytes": 48000000,
"maxWireVersion": 9,
"maxWriteBatchSize": 100000,
"minWireVersion": 0,
"ok": 1,
"readOnly": false,
"topologyVersion": {
"processId": {"$oid": "62f6e707793e7c4def79c999"},
"counter": 0
}
}
]
超过限制怎么办
如果单次数据超过maxWriteBatchSize限制,驱动程序会拆分数据。如单次插入200,000条数据,驱动将会分2次执行,每次100,000条数据。