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

Streaming af resultatet af en samlet operation ved hjælp af spring-data-mongodb

Til dem, der stadig prøver at finde svaret på dette:

Fra spring-data-mongo version 2.0.0.M4 og frem (AFAIK ) MongoTemplate fik en aggregateStream metode.

Så du kan gøre følgende:

 AggregationOptions aggregationOptions = Aggregation.newAggregationOptions()
        // this is very important: if you do not set the batch size, you'll get all the objects at once and you might run out of memory if the returning data set is too large
        .cursorBatchSize(mongoCursorBatchSize)
        .build();

    data = mongoTemplate.aggregateStream(Aggregation.newAggregation(
            Aggregation.group("person_id").count().as("count")).withOptions(aggregationOptions), collectionName, YourClazz.class);



  1. kombinere geoNear-forespørgsel med en anden forespørgsel for en værdi

  2. Sådan finder du dokumenter med nøjagtig de samme array-indgange som i en forespørgsel

  3. ved hjælp af en variabel i mongodb update

  4. Se fremskridt for langvarig mongodb-aggregeringsjob