sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongodb bulk insert limit i Python

Det finns ingen gräns för numret av dokument för bulkinfogning via pymongo. Enligt dokumenten , kan du tillhandahålla en iterabel till collection.insert , och det kommer

insert each document in the iterable, sending only a single command to the server

Nyckelpunkten här är att pymongo kommer att försöka göra din infogning genom att skicka ett enda message till mongodb-servern.

Mongodb själv har en gräns för meddelandestorlek (maxMessageSizeBytes ), som är lika med 48000000 byte (maxBsonObjectSize * 3 ).

Så pymongo-klientdrivrutinen bör vara ansvarig för att dela upp ditt stora meddelande i mindre meddelanden för att passa in i mongodb maxstorleksgräns. Men det är faktiskt inte implementerat ännu. Se:

För närvarande måste du hantera den här situationen själv.

Hoppas det hjälper.




  1. MongoDB $weeklyUpdate #66 (22 april 2022):Hackathons, mongosh och Github

  2. Hitta om objekt har ändrats i pre-save hook mongoose

  3. Mongoose aggregat Lookup - Hur man filtrerar efter specifikt id

  4. Mongoose .save() returnerar tomt felobjekt, sparar inte i DB