Du vil måske prøve mongo.find.exhaust
mulighed
cursor <- mongo.find(mongo, query, options=[mongo.find.exhaust])
Dette ville være den nemmeste løsning, hvis den faktisk virker til din brug.
Men rmongodb-driveren ser ud til at mangle nogle ekstra funktioner, der er tilgængelige på andre drivere. For eksempel har JavaScript-driveren en Cursor.toArray
metode. Hvilket direkte dumper alle resultaterne til et array. R-driveren har en mongo.bson.to.list
funktion, men en mongo.cursor.to.list
er nok det du ønsker. Det er nok værd at pinge driverudvikleren for at få råd.
En hacky løsning kunne være at oprette en ny samling, hvis dokumenter er data "bidder" på hver 100.000 af de originale dokumenter. Så kunne disse hver af disse effektivt læses med mongo.bson.to.list
. Den chunked-samling kunne konstrueres ved hjælp af mongo-serverens MapReduce-funktionalitet.