As explained in mnemosyn's answer, journaling is essential to the storage engines. Luckily, it can be controlled to some extent. The following was written for the MMAPv1 storage engine, which was the default until MongoDB 3.2. Then, WiredTiger became the engine of choice, to which more information can be found at the bottom of this answer.
MMAPv1
MongoDB < 2.6 (Non-YAML Config)
For our development server, we used the following procedure:
cp -p /etc/mongodb.conf /etc/mongodb.conf.orig
vi /etc/mongodb.conf
Now, insert
smallfiles=true
into the mongodb.conf, then save. smallfiles limits the journal file to 128MB.
service mongodb stop
rm -rf /var/lib/mongodb/journal/*
service mongodb start
MongoDB >= 2.6 (YAML Config)
If you're using MMAPv1 with the YAML config style, use the same step to backup the config as above, but into the
mmapv1:
config block, insert
smallFiles: true
. Afterwards, proceed as above, restarting the server whilst removing the journals.
WiredTiger (MongoDB >=3.0, default since 3.2)
On development machines, journal files under WiredTiger should be somewhat smaller by default than under MMAPv1, as journal compression is enabled by default. According to the documentation, "WiredTiger journal files for MongoDB have a maximum size limit of approximately 100 MB". It will "create checkpoints (i.e. write the snapshot data to disk) at intervals of 60 seconds or 2 gigabytes of journal data."
Thus, if you're only running a low amount of requests (with little data to change) on your database, the journal files using WiredTiger should not exceed a low multiple of 100 MB. The size of the journal files seems not to be configurable, however.