Яndex.Server 3.4 представляет собой системный сервис для организации полнотекстового поиска информации в заданной коллекции документов, предназначенный для работы с текстами как в локальной, так и в глобальной сети. Сервис получает управляющие команды и запросы на поиск документов по протоколу HTTP.
Яndex.Server 3.4 состоит из двух основных логических частей: индексатора и поискового сервера. Индексатор анализирует документы, среди которых должен проводиться поиск, и сохраняет информацию о них в специальных индексных файлах. После создания индексных файлов индексатор прекращает работу. В отличие от индексатора, поисковый сервер после запуска находится в постоянном ожидании запросов на поиск. Для успешного старта поисковому серверу необходимы индексные файлы, созданные индексатором.
Если коллекция документов со временем изменяется за счет добавления, изменения или удаления документов, индексные файлы постепенно теряют актуальность. В этом случае необходимо время от времени запускать индексатор и обновлять индексные файлы. Обычно используется режим работы индексатора, при котором он не создает индексные файлы заново, а работает только с информацией об изменившихся, новых и удаленных документах.
Возможность обращаться к поисковой машине на естественном (русском или английском) языке (например, играл ли Спартак с Динамо в марте?).
Поиск идет с учетом морфологии языка, то есть может быть произведен по всем формам слова (например, если задан запрос идти, будут найдены документы со словами идет, шел, шла).
По умолчанию поиск учитывает все формы заданного слова, однако существует возможность поиска по точной словоформе.
Построение словарных гипотез для слов, не содержащихся в базовом словаре (неологизмы, сленг, имена собственные и т.д.)
Если в запросе слово набрано с прописной буквы, будут найдены только слова, написанные с прописной буквы, в противном случае будут найдены как слова с прописной, так и со строчной буквы.
Возможность находить документы, в которых заданные слова идут строго подряд.
Возможность находить документы, в которых указанные слова находятся на заданном расстоянии друг от друга, или на расстоянии, не большем (не меньшем) данного. Расстояние может быть задано в словах или в предложениях.
Поддержка логических операторов И, ИЛИ, И НЕ как в пределах документа, так и в пределах предложения.
Возможность искать документы с датой последнего изменения в заданном диапазоне.
Возможность искать в определенных зонах документа, заданных при индексировании. В частности, можно искать в заголовках и аннотациях HTML-документов.
Возможность учитывать при поиске как атрибуты целого документа, заданные при индексировании, так и атрибуты отдельных частей документа. Например, можно искать документы с заданными ключевыми словами, в заданном каталоге или содержащие заданную картинку.
Возможность искать документы, удовлетворяющие новому запросу, среди документов, полученных в результате предыдущего запроса.
Возможность искать документы, похожие на заданный документ, с использованием специального эвристического алгоритма.
Возможность одновременного распознавания нескольких языков с учетом кодировок.
Поддержка нескольких независимых коллекций документов. Возможность поиска в одной или нескольких коллекциях.
Возможность логически структурировать информацию, организовывая поиск по тематическим разделам коллекции документов.
Возможность распределенного поиска, со сливанием результатов, полученных из разных поисковых источников.
Возможность сгруппировать найденные документы в соответствии с их внешними атрибутами, такими как хост или категория каталога.
Возможность сортировки найденных документов по степени соответствия запросу, по дате или по одному из атрибутов, определенных при индексировании. Пользователь может повлиять на порядок сортировки, используя операторы веса и уточнения запроса.
Результаты поиска могут быть представлены в виде последовательности HTML-страниц, с возможностью произвольного перемещения между страницами и возможностью показывать произвольное число найденных документов на одной странице.
Результаты поиска могут быть представлены в виде XML-документа с определенной схемой.
Поисковый сервис может быть быстро запущен с использованием представления результатов поиска в дизайне по умолчанию.
Возможность полностью настроить дизайн страницы с результатами поиска с использованием скриптов, написанных на Perl, C++ или XSLT. Возможность показывать или не показывать различные свойства документа.
Возможность реализовать HTML-формы, представляющие "расширенный поиск" для пользователей, которые не хотят использовать язык запросов. Поля формы преобразуются в строку поискового запроса с помощью специальной процедуры.
Возможность выделять слова, найденные в заголовках, на странице с результатами поиска. Возможность показывать отдельные предложения документа, содержащие найденные слова, на странице с результатами поиска.
Возможность просмотреть найденный документ с выделенными поисковыми словами. Возможность пролистывать документ к следующему или предыдущему найденному слову. Статистика найденных слов для каждого документа.
Возможность проводить индексирование без остановки поискового сервиса.
Не содержит ограничений на число индексируемых документов, их размер и суммарный размер индекса.
Полнотекстовый индекс без учета точных словоформ занимает менее одной трети от объема проиндексированного текста и создается со скоростью около 40 Мб/мин на однопроцессорной машине класса Pentium IV, 512МБ ОЗУ.
Возможность исключить из индекса слова, лишенные самостоятельной смысловой нагрузки, с целью уменьшения его размера.
Поддержка форматов Plain text, HTML, XML, RTF, PDF, MP3, FLASH, MS Word, MS Excel, MS PowerPoint и других.
"Умное" распознавание HTML и XML-форматов, возможность гибкой настройки, позволяющей индексировать произвольные зоны и атрибуты. Возможность соотнесения с документами дополнительных "внешних" атрибутов.
Содержимое индексируемых документов может быть получено в результате запроса к HTTP-серверу. Индексируемый документ может представлять собой результат работы серверного скрипта, принимающего параметры по методу GET. Автоматическая поддержка редиректов.
Возможность настраивать время разрыва HTTP-соединения, используемый прокси-сервер, пароли доступа и посылаемые HTTP-заголовки для различных групп индексируемых документов.
Содержимое индексируемых документов может быть получено чтением файловой системы локальной сети.
Содержимое индексируемых документов может быть получено обращением к произвольной базе данных, в частности, MySQL и MS SQL.
Адреса документов для индексирования могут быть получены с помощью индексирующего "паука", начинающего индексирование с одного или нескольких заданных документов, и собирающего гипертекстовые ссылки для дальнейшего индексирования.
Возможность автоматически распознавать язык и кодировку индексируемого документа.
Возможность переиндексировать только измененные документы. Возможность оставлять в индексе документы, временно недоступные во время индексирования. Независимая настройка многочисленных параметров индексирования для разных групп документов.
Возможность применения различных фильтров для того, чтобы индексировать или не индексировать документы, адреса которых удовлетворяют заданным шаблонам.
Таблица 1-1. Поддерживаемые платформы
| Операционная система | Версии |
|---|---|
| FreeBSD (i386) | 4.9 и выше; |
| FreeBSD (i386) | 5.2 и выше; |
| Linux (i386) | glibc-2.2; |
| Linux (i386) | glibc-2.3 и выше; |
| Sun Solaris (SPARC) | 9 и выше; |
| Windows (i386) | 9х/NT/2000/XP/2003. |
Для установки Яndex.Server 3.4 необходимо следующее аппаратное и программное обеспечение:
10 Мб свободного дискового пространства для установки программных модулей и конфигурационных файлов системы.
Свободное дисковое пространство для размещения создаваемых системой файлов индекса и временных файлов.
Интерпретатор Perl версии не ниже 5.8, если предполагается разрабатывать дизайн страницы с результатами поиска на языке Perl.
Замечание: Общий объем свободного дискового пространства, необходимого системе в процессе работы, можно оценить лишь приблизительно. При расчетах нужно учитывать следующее: общий объем индексных файлов может достигать от 30% до 90% суммарного объема проиндексированных документов. При переиндексации потребуется еще примерно столько же места, т.к. создавая новые индексные файлы, индексатор не удаляет старые. Кроме того, при обработке запросов поисковый сервер может создавать временные файлы, количество которых зависит от интенсивности запросов.
Яndex.Server 3.4 выпускается в следующих редакциях:
Не содержит лицензионных ограничений на число индексируемых документов, их размер или суммарный размер индекса. Позволяет индексировать документы как через HTTP-соединение, так и чтением локальной файловой системы. Поддерживает все возможности языка запросов, ранжирования результатов поиска и подсветки найденных слов. Представляет результаты поиска во встроенном дизайне, созданном Студией Артемия Лебедева.
В дополнение к возможностям редакции Яndex.Server Standard позволяет представить результаты поиска в виде XML-документа с определенной схемой, который может быть обработан произвольным образом. Кроме этого, Standard+ имеет возможность задавать более одной группы документов с независимой настройкой параметров индексирования.
В дополнение к возможностям редакции Яndex.Server Standard+, позволяет полностью настроить дизайн страницы с результатами поиска с использованием скриптов, написанных на Perl, C++ или XSLT. Имеет возможность реализовать "расширенный поиск" для пользователей, не знакомых с языком запросов, организовать поиск по тематическим разделам, сгруппировать найденные документы по различным признакам. Позволяет сделать тонкую настройку индексируемых зон и атрибутов в HTML-документе.
Редакция Яndex.Server Professional+ отношению к Professional обладает расширенными возможностями в зависимости от добавленного функционального модуля(ей):
+mimetype - поддерживает форматы XML, RTF, PDF, MP3, FLASH, MS Word, MS Excel, MS PowerPoint и другие;
+meta - позволяет искать в нескольких независимых коллекциях документов, имеет возможность распределенного поиска, со сливанием результатов, полученных из разных поисковых источников;
+db - позволяет получать индексируемые документы из произвольных баз данных, в частности, MySQL и MS SQL.
Редакция Яndex.Server Enterprise полностью соответствует пакету Professional+mimetype+meta+db.
Данная документация описывает все возможности редакции Яndex.Server Enterprise. Для редакции Яndex.Server Professional имеются следующие ограничения.
Раздел Конфигурирование коллекции документов. Возможна только одна секция Collection. (Поддерживается в Professional+meta.)
Раздел URL и содержимое документа. Внешние источники данных не поддерживаются. Конфигурация индексатора не может включать секцию DataSource. Модули расширения, описанные в разделе Внешние источники данных, не поставляются. (Поддерживается в Professional+db.)
Раздел Секция DocFormat. Секция не может содержать директив Symbol и Module, а директива MimeType может принимать только значения text/plain и text/html. Парсеры других форматов не поставляются. (Поддерживается в Professional+mimetype.)
Раздел Форматы документов, зоны и атрибуты. Поддерживается только конфигурация HTML-парсера по умолчанию. Секция DocFormat в конфигурации индексатора не может содержать директиву Config.
Раздел Группировочные атрибуты. В дизайне по умолчанию поддерживается только несгруппированный список документов. Конфигурация индексатора не может содержать директив DocProperty и Groups.
Раздел Использование функций формирования страниц (C++ и Perl). Скрипты формирования страниц не поддерживаются. Конфигурация поискового сервера не может включать секцию SearchPageTemplate.
Кеширование поисковых запросов не поддерживаются. Конфигурация поискового сервера не может включать секцию QueryCache.
В директиве IndexedArea не поддерживается ключ задания атрибутов Set.
Отсутствует поддержка вывода результатов поиска в формате XML.
Число областей индексирования IndexedArea - 1.