![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск по файлам [D6, Win95/98, WinME, NT4, Win2k, WinXP]
Денис М Радченко © (2002-08-20 16:55:00)Как лучше всего организовать поиск по статическим HTML страницам? Какой текстовый формат индекса лучше всего использовать (индекс будет генерироваться на Perl/PHP)? Размер страниц - до 10 МБ.
McSimm (2002-08-21 17:26:00) [1]>Денис М Радченко (20.08.02 16:55)
Все зависит от задачи. Если важным критерием является быстродействие, то лучше хранить не слова, а их crc32, и не в текстовом, а в двоичном файле.
Тогда объемы индексных файлов и скорость поиска несоизмеримо улучшатся.
Этот способ я использую давно и практика показала, что двух разных слов с одним crc32 пока не встречалось.
Один из недостатков - обратное преобразование crc32 -> слово.
Если в рамках задачи (как в моем случае) это не требуется, то лучше использовать такой индекс.
Кстати, если есть желание организовывать поиск с учетом морфологии слова, то этот метод также подходит - требуется только перед расчетом crc32 (при индексации и при поиске) привести слово к какому-либо унифицированному виду. (Например отбрасыванием суффикса и окончания) Но это уже другая задача.
И в Делфи и в PHP расчет КС несложен.
В PHP есть crc_32()
Для Делфи есть аналогичная функция Q_CRC32() из модуля QStrings
Денис М Радченко (2002-08-21 16:53:00) [2]2Al2002:
Запросы будут простыми (максимум поддержка нескольких слов).
Как ты считаешь, стоит ли использовать для этого TStringList? (размер индекса ~ 1MB)
AL2002 (2002-08-21 00:09:00) [3]В кавычках фразы. И отдельно по словам. Чтоб были варианты все слова, ни одного слова, хотя бы одно...
Короче, в поисковик лезешь и смотришь синтаксис запросов.
Когда сделаешь прогу, дай посмотреть, если шара.
Денис М Радченко (2002-08-21 00:05:00) [4]Скрипт на PHP я напишу, мне надо чтобы Delphi прога искала!
McSimm (2002-08-20 18:32:00) [5]Это не сюда.
Лучше задать этот вопрос, например, здесь:
http://deforum.ru/cgi-bin/ubb61/ultimatebb.cgi?ubb=forum&f=3
Jeer (2002-08-20 17:59:00) [6]Чтобы это значило..