sql >> Database teknologi >  >> NoSQL >> MongoDB

PyMongo -- cursor iteration

Har du overvejet en tilgang som:

for line in file
  value = line[a:b]
  cursor = collection.find({"field": value})
  entries = cursor[:] # or pull them out with a loop or comprehension -- just get all the docs
  # then process entries as a list, either singly or in batch

Alternativt noget som:

# same loop start
  entries[value] = cursor[:]
# after the loop, all the cursors are out of scope and closed
for value in entries:
  # process entries[value], either singly or in batch

Dybest set, så længe du har RAM nok til at gemme dine resultatsæt, bør du være i stand til at trække dem væk fra markørerne og holde fast i dem før behandling. Dette vil sandsynligvis ikke være væsentligt hurtigere, men det vil afbøde enhver opbremsning specifikt af markørerne og frigøre dig til at behandle dine data parallelt, hvis du er indstillet til det.



  1. Sådan eksporteres MongoDB-forespørgselsresultater til en JSON-fil

  2. MongoDB hvad er standardbrugeren og adgangskoden?

  3. Hvordan kan jeg opdatere flere dokumenter i mongoose?

  4. Introduktion til Redis