Полнотекстовый поиск и индексирование

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

Работу полнотекстового поиска обеспечивают два компонента:
  1. Сервис полнотекстового индексирования — служба Docsvision, которая передаёт индексируемые данные карточек и прикрепленных файлов в Систему полнотекстового поиска.

  2. Система полнотекстового поиска — компонент полнотекстового индексирования Microsoft SQL Server или внешняя система полнотекстового поиска и индексирования Elasticsearch. Данная система формирует полнотекстовые индексы по данным, которые передаёт Сервис полнотекстового индексирования, и при выполнении поиска возвращает идентификаторы карточек с искомыми данными.

Обновление полнотекстовых индексов

Сервер Docsvision проверяет возможность использования полнотекстового поиска исходя из состояния индексов.

При работе со службой полнотекстового индексирования Microsoft SQL информация о состоянии индексов обновляется периодически. Время обновления регулируется значением параметра RefreshTimeout в БД. Если параметр отсутствует, время обновления индексов: 10 минут.

Значение параметра RefreshTimeout по умолчанию — 5 минут.

Значение может быть изменено командой:
exec dvsys_setting_set 'FullTextIndexing_RefreshTimeout', n (1)
1 n — интервал обновления в минутах.

При работе с Elasticsearch состояние индекса в БД всегда актуально.

Полнотекстовое индексирование в Microsoft SQL выполняется с периодом обновления, установленным в Консоли настройки Docsvision в настройке индексирования Обновлять индекс каждые.

Состояние полнотекстового индекса

Состояние индексов при запуске индексирования может изменяться. Ниже приведены более подробные расшифровки состояний:

  • Installed — созданы все необходимые объекты, но индексы пусты. В данном случае консоль только завершила процесс создания индексов.

  • Initializing — происходит индексирование карточек, созданных за прошедший период неактивности индексации.

  • InitPaused — процесс инициализации приостановлен. Вероятнее всего, процесс был остановлен из-за ошибки.

  • Active — все процессы индексации завершены.

  • Updating — обновление информации в карточках, которые были изменены за прошедший период.

  • UpdatingPaused — процесс обновления приостановлен. Вероятнее всего, процесс был остановлен из-за ошибки.

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