Quiero recuperar 200 000 datos de db de mongodb usando morphia.
Antes estaba usando
consulta.asList()
lo que me dio una excepción de falta de memoria. Intenté cambiarlo a
consulta.batchSize(50).asList()
pero sin suerte.
Actualizo mi código a
Iterable<DataStreams> iterable= query.fetch(); Iterator<DataStreams> iterator=iterable.iterator(); while (iterator.hasNext()) { dataStreamsList.add(iterator.next()); } System.out.println("iteration done");query.asList() todo en la memoria. query.fetch() devolverá un iterador que le permitirá procesar cada entidad (en lotes de 20 de forma predeterminada) sin cargar primero todo el conjunto de resultados en la memoria.