Яndex.Server 3.8 Free Edition : Документация для разработчиков и администраторов | ||
---|---|---|
Пред. | Глава 3. Настройка и использование индексатора | След. |
В этом разделе описаны директивы, относящиеся к процессу индексирования в целом. Если какая-либо директива отсутствует в секции Collection, для соответствующих параметров будут использованы указанные значения по умолчанию.
Рабочая директория. Должен быть указан абсолютный путь или путь относительно директории, из которой запущен индексатор. Если в других директивах конфигурационного файла заданы относительные пути, они будут приведены к абсолютным относительно этой директории.
Для программы Яndex.Server директива WorkDir задается в секции Server.
Значение по умолчанию: директория, из которой запущен индексатор
Директория, в которой будут размещены вновь созданные индексные файлы. Должен быть указан абсолютный путь или путь относительно WorkDir. Если директория отсутствует, будет сделана попытка ее создать. Если в указанной директории находятся рабочие индексные файлы, созданные при предыдущем индексировании ("старый индекс"), они будут учтены при построении нового индекса, в соответствии с аргументами других директив конфигурационного файла, и заменены новым индексом перед окончанием работы индексатора. В противном случае индекс будет создан заново, а ключи, относящиеся к режиму обновления индекса, проигнорированы.
Значение по умолчанию: ./workindex
Пример:
IndexDir myindex
Директория, в которой будут храниться промежуточные данные, необходимые индексатору, в том числе вновь создаваемые индексные файлы. Должен быть указан абсолютный путь или путь относительно WorkDir. Если директория отсутствует, будет сделана попытка ее создать. Аргументы директив TempDir и IndexDir должны быть различны. После окончания сеанса индексирования индексатор удаляет временные файлы, созданные им в указанной директории, а вновь созданный индекс перемещает в директорию, заданную в IndexDir.
Значение по умолчанию: ./newindex
Пример:
TempDir /var/tmp/yandex
Путь к файлу, содержащему список стоп-слов. Слова, указанные в этом списке и их формы по умолчанию не будут заноситься в индекс. Применение стоп-слов может значительно уменьшить размер индексного файла. Список стоп-слов должен быть набран в кодировке Windows-1251. В состав поставки включен файл stopword.lst, в котором приведен список некоторых часто встречающихся слов. Файл можно редактировать.
Значение по умолчанию: не задан
Пример:
StopWordFile my_stopword.lst
Директива может иметь несколько аргументов, задающих тот или иной параметр индексирования. Внутри каждой группы аргументов, указанных ниже, нужно выбрать один.
Использование старого индекса
Если в директории, заданной в IndexDir, существует индекс, созданный при предыдущем индексировании, информация об этом индексе будет передана источнику данных, который может использовать ее для работы в режиме индексирования только новых и измененных документов. Конкретное поведение зависит от источника данных и его настройки.
Новый индекс создается в соответствии с текущей конфигурацией источников данных таким способом, как-будто директория, заданная в IndexDir, пуста, независимо от фактического наличия старого индекса.
Значение по умолчанию: Update
Сохранение документных архивов
При индексировании текст документов сохраняется без элементов форматирования. Эта информация используется во время поиска при получении отрывков текста документа, содержащих найденные слова. Архив с сохраненными текстами может иметь размер до 30-40% от суммарного размера индексируемых документов.
Не сохранять текст индексируемых документов. Используется для уменьшения объема индексных файлов и увеличения скорости индексирования в случае, если показывать фрагменты текста с найденными словами не требуется. Однако, если в настройках поиска задана директива DownloadMissingPassages, отсутствующий текст будет загружен для найденных документов.
Значение по умолчанию: StoreArchive
Сохранение стоп-слов
Задает режим игнорирования директивы StopWordFile. Все стоп-слова попадают в индекс, что позволяет использовать поисковый оператор + (плюс) для поиска слов из списка стоп-слов поискового сервера.
Стоп-слова из файла, указанного в директиве StopWordFile, не учитываются в индексе.
Значение по умолчанию: DiscardStopWords
Анализ частотных распределений слов
Значение по умолчанию: IgnoreWordFreqs
Сохранение даты индексирования
Для каждого индексируемого документа создается поисковый документный атрибут с именем idate, типом DATE и значением даты и времени последнего индексирования документа. Поисковые атрибуты обсуждаются в разделе Документы, зоны и атрибуты.
Поисковый документный атрибут idate не создается.
Значение по умолчанию: StoreIndexingDate
Обнаружение границ предложений и абзацев на основе пунктуации
Разрешить распознавание границ предложений и абзацев по знакам пунктуации - точкам, пробелам, переводам строк и т.п.
Границами предложений и абзацев считать только теги, разбивающие абзац в языке разметки или заданные в конфигурации парсера. Никакие естественные границы (например, точка+пробел+Большая_буква или два перевода строки и абзацный отступ внутри тега <pre> в HTML) не разбивают предложений и абзацев. Однако следует учитывать, что максимальная длина предложения ограничена, поэтому слишком длинные предложения все равно будут разбиты на несколько частей.
Значение по умолчанию: AllowPunctBreaks
Определяет максимальное число проиндексированных документов в хранящейся в памяти порции индекса. Чем больше это число, тем быстрее происходит индексирование, но объем памяти, требуемый индексатору, возрастает. При достижении максимального размера порция индекса записывается на диск в директорию, указанную в директиве TempDir, и в памяти создается новая порция. Все временные порции индекса сливаются в итоговый индекс на заключительном этапе индексирования.
Значение по умолчанию: 250
Директива имеет один или несколько аргументов, каждый из которых задает имя документного поискового атрибута, значение которого должно быть сохранено в архиве документов. Документные поисковые атрибуты обсуждаются в разделе Документы, зоны и атрибуты. Имена и критерии, определяющие эти атрибуты, задаются в конфигурации парсера документного формата, а значения определяются во время индексирования документа(см. раздел Конфигурирование поисковых зон и атрибутов).
Если задан аргумент StoreArchive директивы GlobalOptions, в документном архиве также сохраняется весь текст документа.
Суммарный объем значений атрибутов, указанных в данной директиве, заголовка, аннотации и URL документа не может превышать 8 Кб.
Директива имеет один или несколько аргументов, каждый из которых задает имя документного поискового атрибута, из которого должен быть автоматически создан группировочный атрибут.
Группировочные атрибуты обсуждаются в разделе Сортировка и группировка найденных документов. Они являются целыми числами и дают возможность сгруппировать или отсортировать найденные документы по тем или иным критериям, не зависящим от текста документа.
Документные поисковые атрибуты обсуждаются в разделе Документы, зоны и атрибуты. Значения этих атрибутов могут определяться во время индексирования документа в соответствии с настройками парсера документного формата (см. раздел Конфигурирование поисковых зон и атрибутов). Дополнительно, поисковые документные атрибуты типа LITERAL могут быть заданы в директиве Options конфигурационных файлов некоторых источников данных.
В обоих случаях, если в данной директиве указаны имена поисковых атрибутов, определенные в настройках парсера или в директиве Options, то автоматически будут созданы группировочные атрибуты с теми же именами. Значения поисковых атрибутов, определенных в настройках парсера, должны быть целыми числами или последовательностью целых чисел. В этом случае такими же будут и значения группировочных атрибутов. Для литеральных поисковых атрибутов из директивы Options значения группировочных атрибутов будут генерироваться автоматически. В этом случае будут также автоматически созданы файлы соответствия имен имя_атрибута.c2n.
В каждом аргументе директивы сразу после имени атрибута через двоеточие может быть указано одно из чисел 1,2,3,4, имеющее смысл максимального числа байт, которое может занимать значение данного атрибута. Указание меньшего числа уменьшает размер базы группировочных атрибутов. Значение по умолчанию - 4.
Пример 3-1. Пример секции IndexLog
<IndexLog> FileName : index.log Level : Config MoreConfig Warning MoreWarning Info MoreInfo Debug MoreDebug Verbose </IndexLog>
Конфигурационный файл может включать одну секцию IndexLog, в которой настраивается выдача тестовой информации. Секция должна включать директивы FileName и Level.
Путь к файлу протокола индексирования, абсолютный или относительно WorkDir.
Значение по умолчанию: стандартный поток вывода
Уровень выдачи тестовой информации. Директива бывает полезна при отладке и тонкой настройке конфигурации. Директива имеет любое число аргументов из перечисленных ниже.
печать конфигурации, использованной при индексировании
вся информация, выдаваемая в случае Config, плюс дополнительные сведения
печать информации о некорректных случаях обработки данных, некритичных для работы программы в целом
вся информация, выдаваемая в случае Warning, плюс дополнительные сведения
печать информации о проиндексированных документах
вся информация, выдаваемая в случае Info, расширенная информация о проиндексированных документах и дополнительные сведения
печать отладочной информации
вся информация, выдаваемая в случае Debug, плюс дополнительные сведения
синоним для последовательности аргументов MoreConfig MoreWarning MoreInfo
Значение по умолчанию: не задан
Конфигурационный файл может включать несколько секций DataSrc, каждая из которых описывает источник данных. Каждая такая секция должна обязательно включать атрибут id, соответствующий одному из источников данных . Также могут присутствовать необязательные директивы Config.
Пример 3-2. Определение секции DataSrc
<DataSrc id="dsid"> Config : myconfig.cfg <dsid> ... </dsid> </DataSrc>
Для источников данных поставляемых вместе с Яndex.Server 3.8 Free Edition , cекция DataSrc может содержать один вложеный конфиг источника данных, при этом директива Config будет игнорироваться. За интерпретацию такого конфига отвечает источник данных.
Например:
<DataSrc id="ftds"> Name myname <Ftds> <Folder> Path D:\MyFiles </folder> <Extensions> application/pdf: .pdf </Extensions> </Ftds> </DataSrc>
Директивы секции DataSrc.
Задает строку инициализации, которая будет передана источнику данных при его инициализации. Формат этой строки определяется документацией к модулю связи с источником данных. Для источников данных, поставляемых вместе с Яndex.Server 3.8 Free Edition , эта директива является обязательной и определяет путь к файлу конфигурации источника данных, формат которого описан в документации к источнику.
Значение по умолчанию: не задан
Пример:
Config ftds.cfg
В случае, когда корфигурация источника тривиальна, директива Config может содержать строку параметров, кратко орпеделяющих начальную область индексирования.
Конфигурационный файл может включать несколько секций DocFormat, каждая из которых описывает один из форматов подлежащих индексированию документов и используемый для его интерпретации парсер (анализатор содержимого документа). Более подробную информацию о документных форматах можно найти в разделе Секция DocFormat.
Каждая секция DocFormat должна включать обязательную директиву MimeType.
Задает имя документного формата, уникально идентифицирующее этот формат. В качестве идентификатора формата используется т.н. медиа-тип, значения которого специфицированы для большого количества форматов. Медиа-типы, поддерживаемые по умолчанию перечислены в таблице Значения директив секции DocFormat по умолчанию.
Значения директив секции DocFormat по умолчанию.
медиа-тип/подтип (MimeType) | библиотека парсера | конфигурируемый | ||
---|---|---|---|---|
Windows | Unix | |||
text/plain | встроенная | встроенная | нет | |
text/html | встроенная | встроенная | нет |
Пред. | Начало | След. |
Настройка и использование индексатора | Уровень выше | Модули индексатора, входящие в комплект поставки |