sql >> Database >  >> NoSQL >> MongoDB

Snel alle documenten ophalen MongoDB pymongo

als u de $natural sortering gebruikt, wordt de index omzeild en worden de documenten geretourneerd in de volgorde waarin ze op schijf zijn opgeslagen, wat betekent dat mongo niet hoeft te rommelen met willekeurige leesbewerkingen op uw schijf.

https://docs.mongodb.com/ manual/reference/method/cursor.sort/#return-natural-order

De prestaties worden ernstig verslechterd als u een query wilt gebruiken. Vertrouw nooit op FIFO-bestelling. Mongo staat zichzelf toe om documenten binnen zijn opslaglaag te verplaatsen. Als je niet om de bestelling geeft, het zij zo.

for d in db.docs.find().sort( { $natural: 1 } ):
    mylist.append(d)

in python wil je ook een UITLAAT . gebruiken cursortype dat de mongo-server vertelt om de resultaten terug te streamen zonder te wachten tot het pymongo-stuurprogramma elke batch bevestigt

https://api.mongodb .com/python/current/api/pymongo/cursor.html#pymongo.cursor.CursorType.EXHAUST

Let wel, het zal nooit zo snel zijn als de schaal. Het langzaamste aspect van het verplaatsen van gegevens tussen mongo/bson->pymongo->you is UTF8-tekenreeksdecodering binnen python.



  1. Zoek een string binnen een string in SQL

  2. Datumfilter mangoest

  3. Mongoose document update fout

  4. Is er een manier om automatisch een nieuw clusterknooppunt-IP te ontdekken in Redis Cluster met Lettuce?