Marc Perkel trolled:
So Timo,
Have you considered the idea of storing all the email in a MySQL database? Seems to me that MySQL could somplify all the backend stuff that everyone struggles with and with replication one could create very massive and reliable systems. What would it take to use MySQL that way?
Maybe we could recode Dovecot in PHP, too.
Sorry, that was nasty. However, having recently experimented with a very large mail storage system using mysql, I strongly advise against this avenue. In particular, the two main backends have serious deficiencies when you get up to the multi-gigabyte ranges:
- MyISAM doesn't restart in constant time.
- InnoDB's next-key locking kills performance on large blob inserts & deletes.
Anyway, what do you mean, everyone struggles with backends? Dovecot's backends are fast, modular and reliable.
Regarding replication; all good logical volume managers can do this.
Regarding massive; all good filesystems can do this.
Regarding reliable; I guarantee that mysql reliability (when properly managed) is still lower than that of a filesystem (when properly managed).
In fact, the whole argument is specious. Filesystems already are databases, optimised for storing arbitrary-sized data objects using a hierarchical key, which is practically the definition of mail storage.
/jg