Mail storage
Mail storage traits and abilities
| type | damages messages | needs filesystem | Unix only | incoming mail spooling | random access | concurrent access | message attributes | folder attributes | indexes |
| mbox | X | | | | | | | | |
| dotmail | | | | | | | | | |
| MH | | X | X | | X | | X | | |
| maildir | | X | X | X | X | X | X | | |
| relational database | | X | | | X | X | X | X | X |
What software needs from mail storage
| software | incoming mail spooling | random access | concurrent access | message attributes | folder attributes | indexes | outgoing spooling/queuing |
| mail reader | X | X | X | X | X | X | |
| IMAP server | X | X | X | X | X | X | |
| MTA | X | | X | | | | X |
| mailing list manager | X | | | | | | X |
| index/search | | X | X | | | | |
| import/export | | | | X | | | |
| archive | | | | | | | |
Programs that need facilities not provided by a storage
mechanism, often implement those facilities themselves. For
example, for forty years, Unix MTAs and mail readers together
have implemented incoming spooling on top of, or around, mbox
files.