Ok; po długich poszukiwaniach wydaje się, że MongoDB wstępnie przydziela miejsce w plikach o wielkości wykładniczej do 2 GB, po czym każdy plik będzie miał 2 GB.
http://www.mongodb.org/display/DOCS/Excessive+Disk +Spacja
Mój program testowy dodaje pliki 80Mb w plikach tła (.0 - .7 itd.) i gdy porcje danych zaczynają być zapisywane do ostatniego pliku, Mongo wstępnie alokuje inny plik wykładniczo większy niż poprzedni.
Tak więc pierwszy plik 80Mb, wypełnia plik 16Mb, plik 32Mb i pliki tła 64Mb, a ze względu na metadane zajmują nieco więcej miejsca i muszą nieznacznie naruszyć plik 128Mb, co powoduje, że Mongo wstępnie przydzieli plik 256Mb w sumie 496Mb; w miarę dodawania większej liczby plików, więcej plików jest wstępnie przydzielanych, a gdy na mojej maszynie testowej dochodzi do 2 Gb, Mongo nie może uzyskać dostępu do miejsca i zwija się.
Więc chociaż wydaje się, że jeden plik 80Mb zajmuje o wiele więcej miejsca niż powinien - ma to sens w okrężny sposób.
Można to wyłączyć, uruchamiając mongod z opcją --noprealloc, chociaż jest to zalecane tylko dla maszyn testowych.
Dziękujemy za odpowiedzi!