Отцы, хелп!

M
На сайте с 31.01.2002
Offline
0
960

Есть задача, которую мне нужно решить, но не знаю по какому пути пойти и с чего начать. Очень хотелось бы выслушать ваши “отцовские” советы.

А задача, по всей видимости, достаточно простая. Она сводится к реализации поисковой системы (на С под Unix), позволяющая индексировать и искать информацию в текстовых файлах на локальном диске. Проблема заключается в выборе оптимального и достаточного алгоритма индексирования и поиска. Требования к системе: предельный объем индексируемых файлов порядка 0,5 - 1Гб. Индекс организован таким образом, чтобы его можно было обновлять, удалять не нужное. Требования к поиску, кажется, тоже простые: возможность использования булевой алгебры (& и |) и wildcard (* и ?).

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

Заранее благодарен,

Максим.

P.S. Думаю, это было бы не только мне интересно, но и остальным новичкам.

AiK
На сайте с 27.10.2000
Offline
257
AiK
#1

Судя по запросам, нужен обычный полнотекстовый поиск.

Проблема давным давно с тем или иным успехом решённая.

Под "не-Unix" с этим довольно сносно справляется MS SQL сервер в паре с Index сервером.

Соответсвенно нужно поискать аналогичное решение либо в Oracle либо в Sybase.

Последний для Linux бесплатный, правда бесплатная версия несколько отстаёт в развитии от платной.

Если охота самому [по]мучаться, то можно поискать на http://sourceforge.net/

что-либо подходящее (напр. http://sourceforge.net/projects/harvest/)

M
На сайте с 31.01.2002
Offline
0
#2

У Oracle действтиельно есть неплохие рещения, Oracle8i interMedia Next или Oracle9i Text, но все же нужно организовать свой индекс в файловой системе, без использования БД.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий