Ik ben het met Remon eens, maar je noemt batches van 1000, die zijn antwoord niet echt dekt. U kunt een batchgrootte instellen op de cursor:
cursor.batch_size(1000);
U kunt ook records overslaan, bijvoorbeeld:
cursor.skip(4000);
Is dit wat je zoekt? Dit is in feite een pagineringspatroon. Als u echter alleen geheugenuitputting probeert te voorkomen, hoeft u de batchgrootte niet echt in te stellen of over te slaan.