You definitely need to be aware of the fact that one of the downsides of mbox is performance and resource demands as the mbox files grow. What do you consider a large mbox? We have users with single mbox files of 3G and their mail loads up fine. We are using Seamonkey's email client and it makes a local index file of all the message to/from/subject/date/etc so it loads mail very quickly, pretty much instantaneous. One thing I don't like about Maildir is that it keeps each message as a seperate file, so you'll end up with directories with 20k+ files and run into glob problems, and with ext3, you have all these sub 4kb messages still taking up a 4k block on the disk, wasting disk space.
Indeed, but if your mbox gets corrupted then you loose 3G of email... If you delete the first message in the 3G store then you need to rewrite the whole store to free up the space (Dovecot has some optimisations to simply mark messages dead without removing them from the mbox.)
Maildir has different performance characteristics from Mbox and it's best to be aware of the performance implications of both before choosing one. For ext3 it seems like a good idea to enable dir_index option on the filesystem though. (I have quite a few folders with 60K+ messages on ext3)
It may also be worth paying Timo to look again at single instance storage and see if he can code a solution for you? This way you can store multiple copies of messages without penalty...?
I would have thought that the best option would be to use something like BCC recipient maps into an MBox folder (for the archive), then look at either the gzip plugin for dovecot or simply bzip the folders up one a week/month (etc) and rotate them out for a new folder. Mbox is probably good for a write only archive folder and will zip up nicely and can be burned off to some permanent archive media periodically.
Good luck
Ed W