
|
 |
Возможна разработка новых функциональных возможностей поискового движка или доработка существующих.
|
Для реализации задач по организации быстрого поиска в больших обьемах неструктурированной информации мы используем поисковый движок с открытым исходным кодом, написанный на языке C.
Разработкой поискового движка мы занимаемся последние 4 года.
Поисковый движок предназначен для организации поиска на одном или многих web-сайтах, ftp или news-серверах, в базах данных, файловых архивах, массивах изображений и аудио.
Механизм состоит из нескольких частей. Первая часть - это поисковый робот (индексирующий механизм). Робот пробегает по ссылкам и сохраняет в базе данных все найденные слова и новые ссылки. Вторая часть - это front-end (web-интерфейс), предоставляющий возможность поиска в данных, собранных роботом. Третья часть - это совокупность вспомогательных программ, обслуживающих поисковую базу и хранилище копий проиндексированных документов.
Основные возможности поискового движка
- Поддержка протоколов http, https, ftp, nntp и news.
- Поддержка индексирования баз данных SQL.
- Встроенный парсер для mime-типов документов text/html, text/xml, text/plain, audio/mpeg (MP3) и image/gif.
- Возможность подключения внешних парсеров документов. Например для поиска по документам Microsoft Word, Excel, RTF, PowerPoint, Adobe Acrobat PDF, Flash и т.д.
- Возможность индексирования мультиязычных сайтов используя технологию согласования содержимого (content negotiation).
- Поиск всех словоформ.
- Поиск с учетом синонимов, акронимов и аббревиатур на основе расширяемых и редактируемых словарей, разделенных по кодировкам и языкам.
- Возможность поиска без учета стоп-слов, синонимов и акронимов.
- Выбор поиска всех слов сразу, всех слов рядом, любого из слов, или Boolean-запросов. Поддержка VQL (Verity Query Language).
- Рейтинг Популярности (аналог Google's PageRank), основанный на модели нейронной сети.
- Сортировка результатов по релевантности (используя векторную калькуляцию), по рейтингу популярности "Goo" (учитывая вес ссылок), по рейтингу "Neo" (модель нейронной сети), по дате изменения, и по "важности" (комбинации релевантности и рейтинга популярности).
- Поддержка большого списка кодировок с механизмом автоматического определения кодировок и языков.
- Разбиение на фразы (tokenizing) Китайского, Японского, Корейского и Тайского.
- Поддержка Internationalized Domain Names (IDN).
- Поддержка Summary Extraction Algorithm - автоматического суммирования документа в несколько предложений.
- Учет If-Modified-Since при индексировании.
- Фильтрация ID сессий в URL и других технологий, приводящих к замусориванию поисковой базы.
- Поддержка параллельной и мультипотоковой индексации для быстрой индексации и обновления базы.
- Изменяемый график обновлений, с возможностью опциональной проверки отдельных частей документов с отдельной частотой.
- Поддержка аутентификации на сайтах и cookies.
- Возможность хранения копий проиндексированных документов в сжатом виде.
- Проверка правописания для слов в поисковом запросе.
- Механизм кэширования результатов поиска для экономии ресурсов и увеличения скорости поиска.
- Учет поисковых запросов.
|

|
|