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

Hvad kan man gøre med Mongo Aggregation / Performance of Mongo Aggregation

Jeg fik et gyldigt og nyttigt svar fra Google-grupper. Vil gerne dele med jer alle.

Begrænsningen er ikke på antallet af dokumenter:Begrænsningen er på mængden af ​​hukommelse, der bruges af det endelige resultat (eller et mellemresultat).

Så:hvis du samler 200 000 dokumenter, men resultatet passer ind i resultatet på 16 MB, så har du det fint. Hvis du samler 100 dokumenter, og resultatet ikke passer ind i 16 MB, får du en fejlmeddelelse.

På samme måde, hvis du laver en sort() eller en gruppe() på et mellemresultat, og den operation kræver mere end 10 % af tilgængelig RAM, får du en fejl. Dette er kun løst relateret til, hvor mange dokumenter du har:det er en funktion af, hvor stor den særlige fase af pipelinen er.

Grænsen på 16 MB kan ikke justeres. Dette er den maksimale størrelse af et dokument i MongoDB. Da aggregeringsrammen i øjeblikket er implementeret som en kommando, skal resultatet fra aggregeringen returneres i et enkelt dokument:deraf grænsen på 16 MB.

se denne indlæg



  1. Sådan foretrækker du læsninger på sekundære i MongoDb

  2. Selvsigneret SSL-forbindelse ved hjælp af PyMongo

  3. Hvordan kan jeg vente på, at en docker-container er oppe at køre?

  4. MongoDB import/eksport ved hjælp af Node.js