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

Aggregazione Mongo e MongoError:eccezione:BufBuilder ha tentato di crescere() a 134217728 byte, oltre il limite di 64 MB

Aggregate restituisce un singolo documento contenente tutti i dati dei risultati, il che limita la quantità di dati che possono essere restituiti alla dimensione massima del documento BSON.

Supponendo che tu voglia effettivamente tutti questi dati, ci sono due opzioni:

  • Usa aggregateCursor invece di aggregate . Questo restituisce un cursore piuttosto che un singolo documento, su cui puoi quindi scorrere
  • aggiungi un $out stage come l'ultima fase della pipeline. Questo dice a mongodb di scrivere i tuoi dati di aggregazione nella raccolta specificata. Il comando aggregate stesso non restituisce dati e quindi esegui query su quella raccolta come faresti con qualsiasi altra.