Dmitry-T wrote:
Дисковое пространство как раз наоборот менее дефрагментируется - в Oracle например можно сразу указать размер файла для базы данных и как его потом увеличивать. А вот то, что записи с большими полями переменной длины (blob) дольше извлекаются - это, похоже, для всех баз верно. Думаю, самой быстрой будет система в которой почта будет храниться в базе данных только частично, т.е. для больших писем будут хранить только атрибуты и ссылки на файлы (что-то похожее на устройство ntfs :).
В DBMail письмо не храниться одним большим блобом. Они режут тело письма на куски по сколько-то килобайт. Динамический словарь с часто используемыми хедерами у них в TODO. Но даже с уже перечисленными недостатками хранение почты в базе данных даёт преимущества.
Недостатки mbox известны и очевидны, они породили maildir. Недостатки у maildir тоже есть и тоже довольно очевидны. Например для получения списка заголовков нужно открыть кучу файлов и прочитать их, в sql это один select. Самопальные форматы храненения отдыхают тоже по очевидным причинам.
Чего не хватает dbmail так это нормальной поддержки LDAP, индексации текста писем, ну и того что у них в TODO. Но даже сейчас очень неплохо смотрится. Это даже без учёта масштабируемости.
-- Best regards, Sergey Spiridonov