Копировать ссылку на страницу Перейти в предыдущий раздел Перейти в следующий раздел

Подробнее Как контролировать индексирование

Во время индексирования контролируйте:

загрузку процессора и памяти (ОЗУ) на серверах со службой поиска, компонентами Elasticsearch и службой обработки событий. Рекомендуемую конфигурацию сервера см. в типовых требованиях к программному и аппаратному обеспечению;
состояние событий группы SearchEngine в компоненте История серверных событий. Если индексирование проходит успешно, то события обрабатываются и переходят в состояние Завершено:

Щелкните для увеличения изображения

Если есть серверные события в состоянии Ошибка, то устраните причину ошибки и по кнопке Рестарт запустите повторное выполнение сценариев.

Подробнее Как сформировать отчет о состоянии индексирования документов

1.В компоненте Сценарии создайте новую запись и на ленте нажмите на кнопку Текст.
2.В открывшемся редакторе вычислений вставьте код:

 

Dialogs.ESControlPanel.CreateNew().CheckDocumentData(500; True)

Параметры метода CheckDocumentData(BatchSize, NeedFullReport):

BatchSize – размер пакета для загрузки данных. Значение по умолчанию 500 подходит для большинства случаев;
NeedFullReport – сформировать полный отчет. Возможные значения: True, False.
3.На ленте редактора вычислений нажмите на кнопку Выполнить. В зависимости от значения параметра NeedFullReport откроется краткий или полный отчет, в котором:
ES versions count – количество документов, проиндексированных Elasticsearch;
SQL versions count – количество документов в базе данных;
Not indexed count – количество документов, которые не были проиндексированы;
Not deleted count – количество удаленных документов, информация о которых не обновлена в Elasticsearch;
Not updated count – количество измененных документов, информация о которых не обновлена в Elasticsearch.

В полном отчете дополнительно выводится сгруппированный список ИД документов и их версий.

Пример. Фрагмент полного отчета

 

ES versions count: 1598

SQL versions count: 1812

Not indexed count: 223

Not deleted count: 10

Not updated count: 1

 

Not indexed:

122838        1

142191        1        2        3        4

Not deleted:

526090        1

526131        1        2

Not updated:

179343        2

Подробнее Как ускорить первоначальное индексирование

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

Первоначальное индексирование рекомендуется выполнять в несколько этапов по разным периодам. Это упрощает контроль скорости и состояния индексирования. Например, разделите период на интервалы по годам.

Если на сервере со службой обработки событий процессор и память (ОЗУ) не загружены, то параллельно запустите индексирование еще одного периода:

1.Запустите сценарий Панель управления индексированием.
2.В открывшемся окне нажмите на кнопку Индексировать.
3.В полях с и по укажите дополнительный период индексирования.

Если на сервере со службой обработки событий высокая нагрузка на процессор и память (ОЗУ), то для ускорения индексирования разверните дополнительный экземпляр службы обработки событий.

Подробнее Как продолжить индексирование после его остановки

Индексирование может перейти в состояние Остановлено после остановки на панели управления. При этом, когда индексирование переходит в состояние Остановлено, созданный полнотекстовый индекс сохраняется. Поэтому при возобновлении индексирования пересоздавать индекс не требуется. Достаточно проиндексировать оставшиеся объекты.

Чтобы продолжить индексирование, запустите его по оставшемуся периоду:

1.В компоненте История серверных событий найдите события, у которого одновременно выполнено два условия:
состояние Завершено;
запущены сценарием-обработчиком ESFullUpdateIndexData.
2.По полю Конец обработки определите время последнего успешного выполнения события ESFullUpdateIndexData.
3.Создайте полнотекстовый индекс для оставшегося периода с момента последнего успешного выполнения события индексирования.

Подробнее Как ограничить список индексируемых документов

Чтобы задать собственные ограничения для индексируемых объектов:

1.Создайте сценарий с именем ESNeedIndexVersion.
2.В тексте сценария задайте условия, при которых версия документа индексируется. Версия передается через параметр Version. Чтобы версия проиндексировалась, сценарий должен вернуть результат True.

Примечание

Если сценарий ESNeedIndexVersion не создан, то используются ограничения по умолчанию.

Пример

 

// Индексировать версию документа, если ее размер не превышает заданное значение.

Result = Object.Params.ValueByName('Version').Size < 1000

Подробнее Как изменить взаимосвязь даты изменения объекта и его рейтинга

На рейтинг объекта в результатах поиска влияют: дата последнего изменения объекта, количество обращений и другие параметры. Администратор настраивает, в какой степени влияет дата последнего изменения.

Влияние даты последнего изменения задается в двух установках системы:

ESRecencyOffset – период, в течение которого дата изменения не влияет на рейтинг. Значение по умолчанию 31. Указывается в днях;
ESRecencyScale – период, к завершению которого рейтинг падает вдвое. Указывается в днях. Значение по умолчанию 1095.

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

Чтобы объекты, с которыми ведется текущая работа, имели высокий рейтинг, уменьшите значения установок. И наоборот, если у данных, накопленных за несколько лет, должен быть высокий рейтинг, увеличьте значения.

Примечание

Помимо даты последнего изменения на рейтинг в результатах поиска влияет количество обращений к объекту и другие параметры. Например, часто просматриваемый документ, который несколько лет не редактировался, может иметь такой же рейтинг, что и документ с малым числом просмотров, но недавними изменениями.

Подробнее Какие настройки проверить в случае неисправности

Если при полнотекстовом поиске возникает ошибка «Не удалось выполнить полнотекстовый поиск документов», то убедитесь, что в конфигурационном файле SBSearchService.exe.config в секции AuthorizedUsers указан доменный пользователь, от имени которого запущены службы SQL Server.

© Компания Directum, 2020 Сообщество пользователей Directum
.navbar > a:hover { background: #FFD73B; }