[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Анонс: легковесная система полнотекстового поиска



Hello!

On Sunday 07 February 2010 15:14:23 Feata`lion Nyere`` wrote:
> Господин Печников, не могли бы Вы уточнить, возможна ли опция индексирования
> удалённых файлов по http или простой способ добавления её?

Индексирование списка html-страниц проблемы не представляет. Что касается прочих 
форматов, то их чрезвычайно сложно определить "на лету", не сохраняя файл на диск,
а  веб-сервера вроде апача абсолютно криво передают mime-тип. Кроме того, для 
индексирования удаленных ресурсов невозможно получить заранее список файлов, их
необходимо обнаруживать непосредственно в ходе обработки. Далее, обработка 
удаленных архивов также невозможна, поскольку мы не имеем способа получить для
индексации нужный нам файл из архива (при поддержке веб-сервером byte ranges
можно кое-что сделать, но имхо довольно криво).

Так что полагаю оптимальным делать зеркало средствами wget, к примеру, и после
индексировать локальные файлы. С ftp проще - см. curlftpfs.

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

Best regards, Alexey Pechnikov.
http://pechnikov.tel/

Reply to: