ВебмастерМетрикаВиджетыРекламная сетьДиректПоиск для сайтаAPI
Войти

Руководство по установке и эксплуатации

В формате PDF

Конфигурационный файл индексатора

Секция Collection

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

Директивы секции Collection

Директива Описание Значение
WorkDir

Рабочий каталог. Должен быть указан абсолютный путь или путь относительно каталога, из которого запущен индексатор. Если в других директивах конфигурационного файла заданы относительные пути, они будут приведены к абсолютным относительно этого каталога.

Для поискового модуля директива WorkDir задается в секции Server.

Значение по умолчанию:каталог, из которого запущен индексатор.
IndexDir Каталог, в котором будут размещены вновь созданные индексные файлы. Должен быть указан (абсолютный путь или путь относительно WorkDir). Если каталог отсутствует, будет сделана попытка ее создать. Если в указанном каталоге находятся рабочие индексные файлы, созданные при предыдущем индексировании ("старый индекс"), они будут учтены при построении нового индекса в соответствии с аргументами других директив конфигурационного файла, и заменены новым индексом перед окончанием работы индексатора. В противном случае индекс будет создан заново, а ключи, относящиеся к режиму обновления индекса, проигнорированы.

Значение по умолчанию:

./workindex.

Пример:

IndexDir : myindex

TempDir

Каталог, в котором будут храниться временные данные, необходимые индексатору (абсолютный путь или путь относительно WorkDir). Если каталог отсутствует, будет сделана попытка ее создать. После окончания индексирования временные файлы удаляются. Сформированный индекс помещается в IndexDir.

Внимание!
  • TempDir и IndexDir должны быть различны.
  • TempDir и IndexDir должны располагаться в одном разделе файловой системы (Unix) или на одном логическом диске (Windows).

Значение по умолчанию:

./newindex.

Пример:

TempDir : /var/tmp/yandex

MorphFixFile Путь к файлу, который содержит правильное морфообразование слов, отсутствующих в словаре. Значение по умолчанию: не задан. Пример см. ниже.
GlobalOptions Директива, которая позволяет определить параметры индексирования. Может иметь несколько аргументов, которые разбиты на группы. Внутри каждой группы аргументов, указанных ниже, нужно выбрать один.
PortionDocCount Определяет максимальное число проиндексированных документов для хранящейся в памяти порции индекса. Чем больше это число, тем быстрее происходит индексирование, но объем памяти, требуемый индексатору, возрастает. При достижении максимального размера порция индекса записывается на диск в каталог, указанный в директиве TempDir, и в памяти создается новая порция. Все временные порции индекса сливаются в итоговый индекс на заключительном этапе индексирования. Значение по умолчанию: 10000.
DocProperty

Директива имеет один или несколько аргументов, каждый из которых задает имя документного поискового атрибута, значение которого должно быть сохранено в архиве документов (см. раздел Документы, зоны и атрибуты). Имена и критерии, определяющие эти атрибуты, задаются в конфигурации парсера, а значения определяются во время индексирования документа (см. раздел Конфигурирование поисковых зон и атрибутов).

Дополнительно к атрибутам, указанным в данной директиве, в архиве документов автоматически сохраняются особые зоны и атрибуты (см. подробности в разделе Особые названия зон и атрибутов).

Значение каждого документного атрибута, сохраненного в архиве документов, может быть получено на странице с результатами поиска с помощью функции DocProperty.

Суммарный объем значений атрибутов, указанных в данной директиве, заголовка, аннотации и URL документа не может превышать 8 Кб.

PassageProperty Директива имеет один или несколько аргументов в формате zone#attr, каждый из которых задает имя документного поискового атрибута attr поисковой зоны zone, значение которого должно быть сохранено в архиве документов для каждого вхождения поисковой зоны zone. Пример см. ниже. Значение по умолчанию: не задан.
Groups

Директива имеет один или несколько аргументов, каждый из которых задает имя документного поискового атрибута, из которого должен быть автоматически создан группировочный атрибут (см. раздел Документы, зоны и атрибуты).

Группировочные атрибуты являются целыми числами и дают возможность сгруппировать или отсортировать найденные документы по критериям, не зависящим от текста документа (см. раздел Сортировка и группировка найденных документов).

Если значения поисковых атрибутов, определенных в настройках парсера, являются целыми числами или последовательностью целых чисел, то значения группировочных атрибутов будут такими же. Для литеральных поисковых атрибутов из директивы Options значения группировочных атрибутов будут генерироваться автоматически. Группировочные атрибуты хранятся в файлах типа: имя_атрибута.c2n.

В каждом аргументе директивы сразу после имени атрибута через двоеточие может быть указано одно из чисел 1, 2, 3, 4, означающее максимальное число байт, которое может занимать значение данного атрибута. Значение по умолчанию - 4. Указание меньшего числа уменьшает размер базы группировочных атрибутов.

Путь к файлу, который содержит навигационный источник.

Формат файла:

Текст_запроса URL Действие
Текст_запроса URL Действие
...

Действие:

  • 1 - переместить URL в начало выдачи.
  • -1 - переместить URL в конец выдачи.

Разделитель полей: табуляция (\t).

Разделитель строк: новая строка (\n).

Кодировка файла: только Windows-1251.

Значение по умолчанию: не задан. Пример см. ниже.

Пример

Путь к данному файлу определяется в директиве MorphFixFile.

#Заголовок содержит номер версии и кодировку (однобайтовую или UTF-8).
#Номер версии и кодировка могут отсутствовать,
#тогда по умолчанию кодировка = yandex, версия = 0

Version: 1
Encoding: windows-1251

#Зона языка начинается с имени языка в квадратных скобках на отдельной строке.
#Каждая строка в зоне языка - формы одной леммы, через пробел или запятую.
#Восклицательный знак перед формой означает,
#что эту форму можно рассматривать как лемму.

[Russian]
!автоваз автоваза автовазу автовазом автовазе !автовазы автовазов автовазам автовазами автовазах

[English]
!am

[Ukrainian]
!вісімдесятий !вісімдесяте вісімдесятого вісімдесятому вісімдесятим вісімдесятім !вісімдесята вісімдесятої вісімдесятій вісімдесяту вісімдесятою !вісімдесяті вісімдесятих вісімдесятими

Пример

Путь к данному файлу определяется в директиве NavigationSource.

Кодировка файла: только Windows-1251, прочие не поддерживаются.

Бразилия   http://dhcp172-110-red.yandex.net/suit1.html   1
КНР   http://dhcp172-110-red.yandex.net/suit3.html   -1

Аргументы директивы GlobalOptions

Внутри каждой группы аргументов GlobalOptions, указанных ниже, нужно выбрать один.

Аргумент Описание Значение
Построение ссылочного индекса
StoreLinkIndex

При индексировании документов коллекции учитываются междокументные ссылки.

Ссылочный индекс сохраняется в каталоге IndexDir в индексных файлах вида index.ref*.

Значение по умолчанию: не задан.
Использование старого индекса
Update Если в каталоге, заданном в IndexDir, существует индекс, созданный при предыдущем индексировании, то будет производиться доиндексация: новые документы будут добавляться, измененные будут переиндексироваться, удаленные будут удалены, а неизменные останутся в текущем состоянии.
Reindex Индекс создается заново. Старый индекс удаляется. Значение по умолчанию: Update.
Сохранение документных архивов
StoreArchive При индексировании текст документов сохраняется без элементов форматирования. Эта информация используется во время поиска при получении отрывков текста документа, содержащих найденные слова. Архив с сохраненными текстами может иметь размер до 30-40% от суммарного размера индексируемых документов.
DiscardArchive Не сохранять текст индексируемых документов. Используется для уменьшения объема индексных файлов и увеличения скорости индексирования в случае, если показывать фрагменты текста с найденными словами не требуется. Однако, если в настройках поиска задана директива DownloadMissingPassages, отсутствующий текст будет загружен для найденных документов. Значение по умолчанию: StoreArchive.
Анализ частотных распределений слов
AnalyseWordFreqs Задает режим анализирования частотных распределений слов в документе с целью повышения качества ранжирования.
IgnoreWordFreqs Анализ частотных распределений не производится. Значение по умолчанию: IgnoreWordFreqs
Сохранение даты индексирования
StoreIndexingDate Для каждого индексируемого документа создается поисковый документный атрибут с именем idate, типом DATE и значением даты и времени последнего индексирования документа. Поисковые атрибуты обсуждаются в разделе Документы, зоны и атрибуты.
DiscardIndexingDate Поисковый документный атрибут idate не создается. Значение по умолчанию: StoreIndexingDate.
Обнаружение границ предложений и абзацев на основе пунктуации
AllowPunctBreaks Разрешить распознавание границ предложений и абзацев по знакам пунктуации - точкам, пробелам, переводам строк и т.п.
IgnorePunctBreaks Границами предложений и абзацев считать только теги, разбивающие абзац в языке разметки или заданные в конфигурации парсера. Никакие естественные границы (например, точка+пробел+Большая_буква или два перевода строки и абзацный отступ внутри тега <pre> в HTML) не разбивают предложений и абзацев. Однако следует учитывать, что максимальная длина предложения ограничена, поэтому слишком длинные предложения все равно будут разбиты на несколько частей. Значение по умолчанию: AllowPunctBreaks.

Пример

Примечание
Описание директивы см. выше.

Имеем некоторый документ blog.html следующего вида:

  <html>
  <head>
  <title>gt;Заголовок!</title>
  </head>gt;
  <body>gt;
  <div>gt;
    Принцип восприятия философски ассоциирует конфликт, несмотря на мнение авторитетов.
  </div>gt;
  <div yx:replies="yes">
    <div yx:reply="yes" yx:replier="veged">
      Современная ситуация вырождена.
    </div>

    Тут еще какой-то текст.

    <div yx:reply="yes" yx:replier="druxa">
      Информация категорически транспонирует онтологический закон внешнего мира.

      <div yx:comment="yes" yx:commenter="vsolon">
        C кем это вы сейчас разговаривали?
      </div>

      Тут снова умные фразы.

    </div>
  </div>
  </body>
  </html>

Допустим мы хотим, чтобы для каждого предложения, находящегося в тегах <div> с атрибутом yx:replier либо атрибутом yx:commenter, в архиве сохранялся атрибут replier со значением, равным значению атрибута yx:replier/yx:commenter.

  blogparser.cfg:

<HtmlParser>
    <Zones>
        title : title
        reply : div/is_reply
        comment : div/is_comment
    </Zones>
    <Attributes>
        is_reply : LITERAL,reply,,ignore/div.yx:reply
        replier : LITERAL,reply/div.yx:replier
        is_comment : LITERAL,reply,,ignore/div.yx:comment
        replier : LITERAL,reply/div.yx:commenter
    </Attributes>
</HtmlParser>

Определим желаемые свойства пассажей в файле yandex.cfg:

PassageProperty : reply#replier comment#replier

После индексации выполняем команду tarcview workindex\index и получаем следующий результат:

  ~~~~~~ Document 0 ~~~~~~

  Принцип восприятия философски ассоциирует конфликт, несмотря на мнение авторитетов.
  Современная ситуация вырождена.   replier veged
  Тут еще какой-то текст.
  Информация категорически транспонирует онтологический закон внешнего мира.      replier druxa
  C кем это вы сейчас разговаривали?       replier druxa   replier vsolon
  Тут снова умные фразы.    replier druxa

Секция IndexLog

Секция позволяет указать путь к текстовому файлу, в который будет записан лог индексации, и параметры вывода информации. Секция должна включать директивы FileName и Level.

Пример

<IndexLog>
    Filename : index.log
    Level : MoreDebug Verbose
</IndexLog>

Директивы секци IndexLog

Директива Описание Значение
FileName Путь к файлу протокола индексирования, абсолютный или относительно WorkDir. Значение по умолчанию: стандартный поток вывода.
Level Уровень выдачи тестовой информации. Директива полезна при отладке и тонкой настройке конфигурации. Директива имеет произвольное число аргументов из перечисленных ниже.

Аргументы директивы Level

Аргумент Описание Значение
Config Печать конфигурации, использованной при индексировании.
MoreConfig Вся информация, выдаваемая в случае Config, плюс дополнительные сведения.
Warning Печать информации о некорректных случаях обработки данных, некритичных для работы программы в целом.
MoreWarning Вся информация, выдаваемая в случае Warning, плюс дополнительные сведения.
Info Печать информации о проиндексированных документах.
MoreInfo Вся информация, выдаваемая в случае Info, расширенная информация о проиндексированных документах и дополнительные сведения.
Debug Печать отладочной информации
MoreDebug Вся информация, выдаваемая в случае Debug, плюс дополнительные сведения.
Verbose Синоним для последовательности аргументов MoreConfigMoreWarningMoreInfo. Значение по умолчанию: не задан.

Секция DataSrc

Секция описывает источник данных и размещается в секции Collection. Секция Collection может включать несколько секций DataSrc.

Пример

<DataSrc id="dsid">
    Name : myname
    Module : mymodule.so
    Symbol : MYSYMBOL
    Config : myconfig.cfg
    <dsid>
        ...
    </dsid>
</DataSrc>

Каждая такая секция должна обязательно должна включать либо директиву Name, либо атрибут id, соответствующий одному из источников данных, поставляемых вместе с Яндекс.Сервером. Также могут присутствовать необязательные директивы Module, Symbol и Config.

Вложенная конфигурация

Для источников данных, поставляемых вместе с Яндекс.Сервером, описание секции DataSrc может быть выполнено в текущем конфигурационном файле, при этом директива Config будет игнорироваться.

Например:

<DataSrc id="ftds">
    Name : myname
    <Ftds>
        <Folder>
            Path : D:\MyFiles
        </Folder>
        <Extensions>
            application/pdf: .pdf
        </Extensions>
    </Ftds>
</DataSrc>

Директивы секции DataSrc

Директива Описание Значение
Name Задает имя источника данных, уникально идентифицирующее этот источник данных. Может состоять только из латинских букв [a-zA-Z], чисел [0-9] и символа подчеркивания '_'.

Пример:

Name : ftds
Module Задает локальный путь к источнику данных, абсолютный или относительно WorkDir. Применяется в случае, если источник данных реализован в виде разделяемой библиотеки.

Пример:

Module : ../bin/ydftds.dll
Symbol Задает имя символа, который должен быть загружен из библиотеки источника данных. Применяется в случае, если источник данных реализован в виде разделяемой библиотеки.
Config

Задает строку инициализации, которая будет передана источнику данных при его инициализации. Формат этой строки определяется документацией к модулю связи с источником данных. Для источников данных, поставляемых вместе с Яндекс.Сервером, эта директива является обязательной и определяет путь к файлу конфигурации источника данных, формат которого описан в документации к источнику.

В случае, когда конфигурация источника тривиальна, директива Config может содержать строку параметров, кратко определяющих начальную область индексирования.

Примеры конфигурации источников см. ниже.

Значение по умолчанию: не задан

Пример:

Config : ftds.cfg

Пример

<DataSrc id="ftds">
    Name : myname
    Config : -f C:\MyFiles
</DataSrc>

Пример

<DataSrc id="webds">
    Name : myname
    Config : -w http://localhost/docs/index.html
</DataSrc>

Секция DocFormat

Секция определяет необходимость дополнительной настройки Парсера (анализатора содержимого документа) для коллекции документов, в которой она размещена.

Для каждого типа парсера необходимо задавать отдельную сецию DocFormat.

Если секция не задана либо задана не полностью, для коллекции документов используются стандартные (по умолчанию) настройки парсеров.

Подробная информация о парсерах и их настройках размещена в разделах Парсеры (анализаторы содержимого документа), Конфигурация HTML-парсера и Конфигурация XML-парсера.

В секцию DocFormat входят обязательные директивы MimeType и Config.

Пример

<DocFormat>
    MimeType : text/html
    Config : html.cfg
</DocFormat>

Директивы секции DocFormat

Директива Описание
MimeType

Определяет тип настраивомого парсера.

Возможные значения:

  • text/html - HTML-парсер.
  • text/xml - XML-парсер.

Обязательная директива.

Config

Определяет локальный путь к конфигурационному файлу парсера, абсолютный или относительно WorkDir.

Форматы конфигурационных файлов описаны в документации к соответствующим парсерам: Конфигурация HTML-парсера и Конфигурация XML-парсера.

Обязательная директива.