LINUX.ORG.RU
ФорумAdmin

Дедупликация файлов на почтовом сервере

 , ,


0

1

Ситуация: почтовый сервер с несколькими аккаунтами, получающими частично пересекающийся поток почты. Хочется прозрачно избавиться от дубликатов так, чтобы пользователи ничего не заметили. Один из вариантов - trimtrees.pl, но подозреваю, что тут могут быть подводные камни. У кого был подобный опыт, что использовали? Как впечатления?

ZFS и btrfs не предлагать.

★★★★★

избавиться от дубликатов

О чем речь? У вас ходят дубли почты? Или речь об аттачментах, которые пользователи пересылают друг другу десятки раз, забивая ящики десятками копий фильма с котиками?

anonymous ()

А как такое вообще возможно?

sin_a ★★★★★ ()
Ответ на: комментарий от Axon

на ум приходят только линки, но схавает ли их почтарь, и где хранить целевые файлы и как их уничтожать когда они станут ненужными юзверям

vxzvxz ★★★ ()

dbmail может дедуплицировать даже по mime-part-ам, но там совсем не файлы.

Подозреваю что лучшее решение сменить ФС на ту, которая умеет дедупликацию.

sergej ★★★★★ ()
Ответ на: комментарий от vxzvxz

на ум приходят только линки, но схавает ли их почтарь, и где хранить целевые файлы и как их уничтожать когда они станут ненужными юзверям

Эти вопросы и мне пришли в голову. Я надеялся, что есть какой-то продуманный вариант, дающий на них ответы.

Axon ★★★★★ ()
Ответ на: комментарий от nezametniy

вполне она готова, facebook уже год сидит на ней как на основной FS.

В пейсбуке есть отдел тестирования, который весь софт прогоняет через все сценарии использования и собирает все грабли. У нас бюджет немного другой, так что приходится сразу выбирать наименее проблемные решения.

Axon ★★★★★ ()
Ответ на: комментарий от anonymous

Lessfs, но я сам не пробовал.

Хм, выглядит интересно. Надо потестить этого зверя.

Axon ★★★★★ ()
Ответ на: комментарий от sergej

dbmail может дедуплицировать даже по mime-part-ам, но там совсем не файлы.

Надо бы попробовать это дело настроить параллельно с dovecot'ом, потестить в деле. Когда изначально поднимал почту, думал о хранении в БД, но отбросил этот вариант, не помню почему. Может, неправ был.

Axon ★★★★★ ()
Последнее исправление: Axon (всего исправлений: 1)
Ответ на: комментарий от Axon

да нет с ней проблем, я её использовал под шары которые трахали каждую секунду офисными пакетами и кучей файлов с фото/картинками. Сейчас вон у знакомого на ней postrgresql и площадка на руби игровая(казино интернет), никаких проблем.

nezametniy ()
Ответ на: комментарий от leave

А всем тем же. Скажем, я не в курсе, меняет ли почтовик атрибуты файлов при работе, и если да, то как это отразится у разных юзеров. Есть чуйка что возможны грабли, и нет желания собирать их литсом.

Axon ★★★★★ ()
Ответ на: комментарий от nezametniy

да нет с ней проблем, я её использовал

А я как ни возьмусь потестить, всё на новые проблемы нарываюсь.

Axon ★★★★★ ()
Ответ на: комментарий от nezametniy

может тестить не на убунте?

Самый, что ни на есть, арч.

возьми fedora/centos

Thanks, but no thanks.

Axon ★★★★★ ()
Ответ на: комментарий от Axon

dbmail потребует от тебя кунг-фу в настройке ДБ, у нас на mysql около 100 ящиков и 100Гб почты иногда подтормаживает, когда толпа thunderbird-ов начинает активно тащить и индексировать почту.

sergej ★★★★★ ()
Ответ на: комментарий от sergej

У меня масштабы на порядок меньше. Правда, и vps-ка самая дешманская, но нагрузка от dovecot'а на ней вообще не чувствуется.

Axon ★★★★★ ()
Ответ на: комментарий от nezametniy

а ты что свечку чтоль держал, вгоняешь нам тут о бэтеэре, ясен пень что в фейсбуке используют целые фермы кластеров, и эта бтрфс лишь прокладка на каком-то уровне от стабильности которой мало что зависит

vxzvxz ★★★ ()

Но у писем как минимум заголовки различаются. Откуда возьмутся одинаковые файлы?

sin_a ★★★★★ ()
Ответ на: комментарий от sin_a

Поэтому и описал конкретный случай. Например, block level deduplication, по идее, должна работать и с разными заголовками.

Axon ★★★★★ ()
Ответ на: комментарий от sin_a

Причём оно с некоторых пор умеет всякие вкусные LZMA/LZ4 (первый адски жмёт, но кушает много CPU, второй жмёт чуть похуже GZIP, но работает адски быстро - до 400мбайт\сек на сжатие на одном тухлом ядре).

blind_oracle ★★★★★ ()
Ответ на: комментарий от sin_a

О, спасибо. Это, может, и не самое эффективное решение, зато самое простое. Тем более, что на vps-ке cpu-bound задачи выгоднее, чем io-bound.

Axon ★★★★★ ()
Ответ на: комментарий от Axon

Кстати, у dovecot есть и хранение вложений отдельно с дедупликацией: http://www.dovecot.org/list/dovecot/2010-August/052175.html , и похоже оно с того времени тихо и незаметно вошло в апстрим:

[root@mail conf.d]# tail -n 25 10-mail.conf 
##
## Mail attachments
##

# sdbox and mdbox support saving mail attachments to external files, which
# also allows single instance storage for them. Other backends don't support
# this for now.

# Directory root where to store mail attachments. Disabled, if empty.
#mail_attachment_dir =

# Attachments smaller than this aren't saved externally. It's also possible to
# write a plugin to disable saving specific attachments externally.
#mail_attachment_min_size = 128k

# Filesystem backend to use for saving attachments:
#  posix : No SiS done by Dovecot (but this might help FS's own deduplication)
#  sis posix : SiS with immediate byte-by-byte comparison during saving
#  sis-queue posix : SiS with delayed comparison and deduplication
#mail_attachment_fs = sis posix

# Hash format to use in attachment filenames. You can add any text and
# variables: %{md4}, %{md5}, %{sha1}, %{sha256}, %{sha512}, %{size}.
# Variables can be truncated, e.g. %{sha256:80} returns only first 80 bits
#mail_attachment_hash = %{sha1}
[root@mail conf.d]# 

Причём на самом деле тихо и незаметно, найти информацию об этом не так просто, даже у них на вики всего одно скромное упоминание: http://wiki2.dovecot.org/MailboxFormat/dbox . Прикольно, только для того чтобы попробовать нужно преодолеть лень и отдельную тестовую почту сделать.

sin_a ★★★★★ ()
Ответ на: комментарий от sin_a

Кстати, у dovecot есть и хранение вложений отдельно с дедупликацией: http://www.dovecot.org/list/dovecot/2010-August/052175.html , и похоже оно с того времени тихо и незаметно вошло в апстрим

Я гонял это на боевой почте года 2 назад. Работает хорошо, но не понятно, как проводить очистку хранилища вложений. Чтобы удалить все вложения, на которые не осталось ссылок (к примеру все пользователи поудаляли соответствующие письма). Насколько я понял, сам dovecot этого не делает, на тот момент, по крайней мере...

Davyd ★★ ()
Ответ на: комментарий от Davyd

Пока встретилось только вот это: https://blog.jcea.es/posts/20160211-delete_users_dovecot.html .

Попробую, если покажется интересным то надо будет превозмочь себя и спросить у них на форуме на их неизвестном языке. Благо гугль любит нас и дал нам яндекстранслейт (или наоборот, я в них путаюсь). Хотя то описание вроде должно покрыть и этот случай (правда и туда добрались феминистки).

Мне интересно, даст ли это какую либо пользу кроме дедупликации. Хотя и таковая конечно уже плюс.

sin_a ★★★★★ ()
Ответ на: комментарий от sin_a

Спасибо. Судя по всему, dovecot научился чистить вложения для удаленных писем. Значит можно опять внедрять sis

Davyd ★★ ()
Ответ на: комментарий от vel

Честно говоря вроде не раз здесь читал, что dovecot тоже самое делает. Может и ошибаюсь.
А так да, на примере цируса, не плохой выигрыш по месту получается, сейчас также ради интереса глянул на одном из почтарей 124G реального, 184G считая линки, т.е. 60G выигрыша.

anc ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.