sql >> Databasteknik >  >> NoSQL >> MongoDB

Se utvecklingen av långvarigt mongodb-aggregationsjobb

Om du använder $out aggregeringspipeline-operatör för att mata ut resultatet av aggregeringen till en annan (eller samma )-samling kan du öppna ett nytt mongoskal och se hur många dokument som finns i den nya samlingen. Om du skriver över samlingen du aggregerar från kommer MongoDB att använda ett tillfälligt samlingsnamn för att göra operationen atomär, som tmp.agg_out.1 . Så, kör

db['tmp.agg_out.1'].count()

För att ta reda på det exakta namnet på den tillfälliga samlingen kan du följa den nuvarande MongoDB loggen och se efter meddelanden om sammanställningen. mLab och andra moln MongoDB-värdleverantörer kan också ha ett praktiskt alternativ för "strömma aktuell logg".

Till exempel när du kör frågan i det här svaret , kan relevanta loggmeddelanden se ut så här:

(Jag hoppades att nInfogad eller insatta nycklar skulle indikera framsteg, men det verkar inte vara fallet; antalet dokument i den tillfälliga insamlingen var en mycket mer exakt framstegsindikator.)



  1. elemMatch kombinerat med andra frågefält i Mongoose

  2. Ansluter Django +1.10 med MongoDB

  3. MongoDB update()

  4. Indexering av parallella arrayer i Mongodb