Закончил перевод всей почтовой базы с TheBat на встроенный почтовик Оперы, М2. В целом - доволен. Но расскажу по порядку, начиная с концепции M2.
Традиционные почтовые клиенты, как просто
MUA (в Unix), так и "частично комбинированные" с
MTA (обычные клиенты для Windows), хранят почту в папках (folders), по аналогии c файловой системой. Бывают стандартные папки - "Входящие", "Исходящие", "Отправленные", "Черновики", "Корзина". Через какое-то время писем становится много, и все они свалены в одну кучу. Тогда можно организовать свои папки, даже целую их иерархию, и настроить фильтры для входящей почты, которые будут класть эти письма куда надо.
С годами писем становится много - тысячи или даже десятки тысяч. Сортировка писем (настройка фильтров) по папкам при большом объеме корреспонденции, а потом ориентирование в десятках папок начинает занимать всё больше времени. Чтобы найти какое-то письмо, может потребоваться много времени, потому что оно подходит под тематику нескольких папок, так что в результате придется устроить поиск по всей базе размеров в сотню-другую мегабайт. Еще больше запутает картину наличие нескольких почтовых ящиков, особенно если между ними в разное время были редиректы.
Разработчики 7-ой версии Оперы придумали другой вариант. Вместо буквального копирования расположения писем в папках как файлов в каталогах сделано иначе. Все письма, со всех ящиков, кладутся в единую базу. Далее, при отображении пользователю, создаются так называемые Views (виды, представления). Что такое представление, можно хорошо пояснить на примере аналогии с SQL: пусть все письма лежат в таблице, тогда представление делает SELECT из этой таблицы по некоторому критерию, и показывает отобранные таким образом письма. Причем, аналогия идет и дальше, представления могут образовывать иерархию, в которой дочерние элементы могут отбирать письма только из родительских (хотя могут и напрямую из полной базы).
Из идеи представлений следует, что одно письмо может присутствовать одновременно в нескольких представлениях - хранится одна физическая копия, а показываются отобранные экземпляры. Более точной является аналогия с хард-линками на юниксовых файловых системах (и NTFS) - виды-каталоги хранят лишь ссылки на иноды, а уж те - информацию о самих письмах.
( Read more... )Хорошо ли, плохо ли будет - посмотрим. Главное, ради чего я переходил на почтовик Оперы, достигнуто - кроссплатформенность. Я смогу со своей почтой работать из любой ОС, в которой работает Опера. Одно из основных препятствий на пути миграции из Windows в мир Unix - почта - устранено ;)