allowDiskUse
nesouvisí s limitem velikosti výsledku 16 MB. Toto nastavení řídí, zda kroky potrubí, jako je $sort nebo $group, mohou používat dočasné místo na disku, pokud potřebují více než 100 MB paměti. Teoreticky by to pro libovolný kanál mohl být velmi velký prostor na disku. Osobně to nikdy nebyl problém, ale to bude na vašich datech.
Pokud bude váš výsledek větší než 16 MB, musíte k výstupu dat do kolekce použít fázi $out pipeline nebo použít rozhraní API, které vrací kurzor na výsledky namísto vracení všech dat v řádku (u některých ovladačů to je samostatná metoda, pro ostatní je to příznak předaný stejné metodě).