[Moscow.pm] String to Hash
Kaltashkin Eugene
zhecka на gmail.com
Вт Фев 9 09:15:56 PST 2010
09.02.2010 19:16, Alex Kapranoff пишет:
> Отсутствие домена в базе будет самым худшим случаем в смысле
> алгоритмической сложности и к тому же самым частным :)
> Поэтому в таких системах часто в качестве первого уровня проверки
> реализуют фильтры Блума, которые позволяют очень быстро узнать, что
> домена нет в базе.
> Рекомендую.
>
Ну почему же худший случай ?
запрос домена второго уровня из базы вернёт либо да, либо нет.
Если есть домен третьего и выше уровней - значит есть ключевой домен
второго.
memcached или Cache::FastMmap по хешам отдают очень быстро, поэтому
задержек почти не будет.
Вообще под эту тему идеально подходит radix tree, но им будет неудобно
определять множество вхождений.
> Саму базу я бы хранил просто в памяти в виде хэш-таблицы.
>
Оно так и будет md5($domain) и к нему ключи.
> Не вполне ясно, откуда взялась задача из оригинального поста :) Весь
> парсинг в таких системах делают оффлайново и заранее.
>
оффлайново уже устарело :) увы.
я за realtime обработку :) ибо фильтра которые у меня сейчас работают -
практически realtime.
не сбрасывая кеш самой базы и не пересчитывая данные мы можем
синхронизировать её без потери времени на перезагрузку.
а основная задача выросла вот отсюда http://habrahabr.ru/blogs/sysadm/74754/
Суть в том, что в большой конторе тяжело уследить кто чего откуда
случайно стянул. Каспер уже не помогает, народ хватает
новых Locker и Zbot ежедневно, поэтому в ход должны пойти антималварные
и антивирусные списки.
Мне необходимо иметь теоретически бесконечное количество листов
блокировки в реальном режиме времени и чтоб они были независимы.
статика:
- malware, virus, fishing домены (2-5 листов)
- Online TOR лист
всякие squidguard, rejik и тыды листы.
Внешние realtime сервисы:
- опрос Orange Filter
- опрос OpenDNS
- опрос dnsbl и прочих списков
- опрос dul списков
И чтобы всё это рулилось из одного места :) ну и чтобы был какойто
callback(в будущем) для определенных категорий.
Вотъ.
Подробная информация о списке рассылки Moscow-pm