К статье
Практический материал

Администрирование · 12 мин

Как отключить индекс поиска в 1С

Как отключить индекс полнотекстового поиска в 1С: выключение обновления индекса, очистка данных, влияние на поиск и производительность базы.

Полнотекстовый поиск в 1С ускоряет нахождение документов и элементов справочников по произвольным словам, но за это приходится платить: система регулярно обновляет индекс, расходует дисковое пространство и создаёт дополнительную нагрузку на сервер или рабочий компьютер. На больших базах фоновое обновление индекса способно заметно тормозить работу пользователей, особенно если регламентное задание запускается в разгар рабочего дня.

Отключить индекс поиска в 1С можно штатными средствами — через раздел администрирования в режиме «Предприятие» или программно, через встроенный язык. При этом важно понимать разницу между отключением обновления индекса и полным отключением полнотекстового поиска с очисткой уже построенного индекса: это разные операции с разными последствиями.

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

Что такое индекс полнотекстового поиска и когда его отключают

Полнотекстовый индекс — это служебная структура данных, которую платформа 1С строит по содержимому текстовых реквизитов объектов: наименованиям, комментариям, описаниям, содержимому присоединённых файлов. Благодаря индексу поиск по слову «счёт-фактура поставщика» выполняется за секунды, а не перебором всех записей базы.

Обновление индекса выполняется регламентным заданием «Обновление индекса ППД» (в файловых базах — при запуске или по расписанию, в клиент-серверных — на сервере). Задание сканирует изменённые объекты и дописывает их в индекс. На больших базах это занимает заметное время и нагружает дисковую подсистему.

Типичные причины отключить индекс поиска:

  • пользователи не пользуются полнотекстовым поиском — ищут документы по номеру, дате и отборам в списках;
  • регламентное задание обновления индекса мешает работе: база «подвисает» в моменты его запуска;
  • не хватает дискового пространства — индекс на больших базах может занимать значительный объём;
  • база является архивной или копией для отчётности, где поиск не нужен в принципе;
  • на сервере 1С настраивают производительность и отключают всё необязательное.

Как отключить индекс поиска через интерфейс «1С:Предприятие»

Стандартный способ подходит для типовых конфигураций (Бухгалтерия предприятия, Управление торговлей, ЗУП и других на Библиотеке стандартных подсистем). Действия выполняются под пользователем с правами администратора.

Порядок действий
  1. 1
    Откройте раздел «Администрирование» в главном меню программы.
  2. 2
    Перейдите в «Общие настройки» (в некоторых конфигурациях — «Поддержка и обслуживание»).
  3. 3
    Найдите блок «Полнотекстовый поиск» и снимите флажок «Использовать полнотекстовый поиск».
  4. 4
    Если платформа предложит очистить индекс — подтвердите, чтобы удалить уже построенные данные.
  5. 5
    Закройте настройки и проверьте, что поиск в строке глобального поиска перестал находить объекты по тексту.

После снятия флажка регламентное задание обновления индекса перестаёт выполняться, а сам индекс больше не поддерживается. Если конфигурация не предложила очистку автоматически, старый индекс может остаться на диске — его имеет смысл удалить отдельно.

В некоторых типовых решениях путь отличается: например, настройка может находиться в разделе «НСИ и администрирование → Общие настройки» или «Администрирование → Поиск и индексирование». Ориентируйтесь на название «Полнотекстовый поиск» — оно едино для всех конфигураций на базе БСП.

Как отключить индекс программно, через встроенный язык

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

Ключевые методы объекта ПолнотекстовыйПоиск:

  • ПолнотекстовыйПоиск.УстановитьИспользование(Ложь) — отключает использование полнотекстового поиска;
  • ПолнотекстовыйПоиск.ПолучитьИспользование() — возвращает текущее состояние (Истина/Ложь);
  • ПолнотекстовыйПоиск.ОчиститьИндекс() — удаляет построенный индекс;
  • ПолнотекстовыйПоиск.ОбновитьИндекс(Ложь, Истина) — полное перестроение индекса (нужно при обратном включении).
bsl
ПолнотекстовыйПоиск.УстановитьИспользование(Ложь);
ПолнотекстовыйПоиск.ОчиститьИндекс();
Сообщить("Полнотекстовый поиск отключён, индекс очищен: " + НЕ ПолнотекстовыйПоиск.ПолучитьИспользование());

Код выполняется через внешнюю обработку, консоль кода или внешнее соединение под пользователем с правами «Администрирование» и «Толстый клиент» при необходимости. В клиент-серверном варианте код исполняется на сервере — учитывайте это при вызове из клиентской процедуры (директива &НаСервере).

Особенности для файловых и клиент-серверных баз

Сама настройка одинакова, но отличается то, где физически хранится индекс и как выполняется его обновление.

В файловой базе индекс хранится в каталоге базы, в подкаталоге вида 1Cv8FTxt (рядом с файлом 1Cv8.1CD). Обновление выполняется процессом, в котором запущено регламентное задание, — обычно это сеанс пользователя, у которого включено выполнение фоновых заданий. После отключения поиска и очистки индекса этот каталог можно удалить вручную при закрытой базе, чтобы освободить место.

В клиент-серверной базе индекс хранится на сервере 1С:Предприятия в каталоге srvinfo, внутри подкаталога конкретной информационной базы. Обновление выполняет рабочий процесс сервера по расписанию регламентного задания. Удалять файлы индекса вручную на сервере стоит только при остановленной службе агента сервера и полностью отключённом поиске, иначе есть риск рассогласования данных.

Сравнение вариантов

Отключить обновление, оставить поиск

Индекс устаревает, поиск находит только старые данные. Подходит как временная мера на период пиковой нагрузки.

Полностью отключить поиск с очисткой индекса

Максимальное снижение нагрузки и освобождение места. Поиск по тексту перестаёт работать совсем; включение потребует полного перестроения индекса.

Оставить поиск, перенести обновление на ночь

Компромисс: поиск работает, но регламентное задание не мешает пользователям днём. Настраивается расписанием задания «Обновление индекса ППД».

Альтернатива: настроить расписание вместо отключения

Полное отключение — не всегда оптимальное решение. Если поиском пользуются хотя бы иногда, но обновление индекса мешает работе, достаточно перенастроить расписание регламентного задания.

Откройте «Администрирование → Поддержка и обслуживание → Регламентные и фоновые задания», найдите задание «Обновление индекса ППД» (или «Слияние индекса ППД») и измените расписание: например, на ежедневный запуск в 3 часа ночи. В этом случае индекс остаётся актуальным с точностью до суток, а дневная нагрузка исчезает.

Дополнительно можно ограничить объём индексируемых данных: в плане обмена или настройках состава полнотекстового поиска (через свойства метаданных — признак «Полнотекстовый поиск» у реквизитов) исключить редко используемые поля. Это сокращает и размер индекса, и время его обновления.

Маршрут решения

Как выбрать действие

Поиском никто не пользуется, база тормозит от регламентных заданийПолностью отключите полнотекстовый поиск и очистите индекс
Поиск нужен, но обновление мешает днёмПеренесите расписание задания «Обновление индекса ППД» на ночь
Не хватает места на дискеОтключите поиск, очистите индекс и удалите каталог индекса при закрытой базе
Это копия базы или архив для отчётовОтключайте поиск без колебаний — он там не нужен

Как проверить результат и освободить место

После отключения убедитесь, что настройка применилась и нагрузка действительно снята. Проверка занимает несколько минут.

Контрольные точки

Как проверить результат

Состояние настройки
Норма

Флажок «Использовать полнотекстовый поиск» снят; метод ПолучитьИспользование() возвращает Ложь

Тревожный признак

Флажок снова установлен — настройку переопределяет обработка обновления или расширение

Регламентное задание
Норма

«Обновление индекса ППД» не выполняется, в журнале нет новых запусков

Тревожный признак

Задание продолжает запускаться и завершается ошибками

Глобальный поиск
Норма

Поиск по произвольному слову не возвращает объекты по текстовому совпадению

Тревожный признак

Поиск по-прежнему находит документы по содержимому

Место на диске
Норма

Каталог индекса удалён или пуст, объём базы уменьшился

Тревожный признак

Каталог 1Cv8FTxt по-прежнему занимает прежний объём

Если флажок «сам собой» вернулся во включённое состояние, проверьте обработки обновления конфигурации и расширения: некоторые решения принудительно включают полнотекстовый поиск при обновлении. В этом случае отключение нужно выполнять после обновления или корректировать код расширения.

Для файловой базы финальный шаг — удалить каталог индекса. Закройте все сеансы базы, найдите рядом с файлом 1Cv8.1CD папку с индексом и удалите её. При следующем запуске база откроется нормально — платформа не пересоздаёт индекс при выключенном поиске.

Типичные ошибки
01
Отключили только расписание задания, но не сам поиск — индекс продолжает занимать место и обновляться при ручных запусках.
02
Очистили индекс без резервной копии, а через неделю выяснилось, что бухгалтерия искала документы по тексту — пришлось ждать полного перестроения индекса.
03
Удалили каталог индекса при работающем сервере 1С — получили ошибки полнотекстового поиска и рассогласование состояния.
04
Отключили поиск только в одной базе из нескольких на сервере и решили, что нагрузка снята везде.
05
Забыли, что настройка хранится в базе: после восстановления из старой копии поиск снова включился.

Когда отключать индекс не стоит

Есть ситуации, в которых отключение принесёт больше проблем, чем пользы. Не отключайте поиск, если пользователи активно ищут документы по содержимому — например, служба поддержки ищет обращения по словам, а менеджеры — договоры по названию контрагента в комментарии. Без индекса такие задачи потребуют ручных отборов и займут в разы больше времени.

Также осторожность нужна в конфигурациях, где полнотекстовый поиск встроен в бизнес-процессы: некоторые решения используют его для поиска дублей контрагентов, подбора номенклатуры или работы с обращениями. Перед отключением уточните в документации к конфигурации, не завязан ли на поиск какой-либо функционал.

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

Итог

Что важно запомнить

Индекс поиска отключается в «Администрирование → Общие настройки → Полнотекстовый поиск» или методом ПолнотекстовыйПоиск.УстановитьИспользование(Ложь) с последующей очисткой индекса. Перед отключением сделайте копию базы и убедитесь, что поиском никто не пользуется. Если проблема только в нагрузке днём — сначала попробуйте перенести расписание обновления индекса на ночь.

Частые вопросы

Отключение индекса удалит данные из базы?

Нет. Очищается только служебный индекс — копия текстовых данных в специальном формате. Документы, справочники, комментарии и файлы остаются нетронутыми. Потеряется лишь возможность быстро искать по их содержимому.

Как вернуть поиск после отключения?

Установите флажок «Использовать полнотекстовый поиск» обратно и запустите полное обновление индекса: кнопкой в настройках или методом ПолнотекстовыйПоиск.ОбновитьИндекс(Ложь, Истина). На большой базе первичное построение может занять продолжительное время — запланируйте его на нерабочие часы.

Почему база всё равно тормозит после отключения индекса?

Индекс — лишь один из возможных источников нагрузки. Проверьте остальные регламентные задания, размер журнала регистрации, фрагментацию индексов СУБД и дисковую подсистему сервера. Отключение полнотекстового поиска помогает только если проблема была именно в нём.

Можно ли отключить индекс только для части объектов?

Полностью отключить поиск выборочно нельзя — настройка действует на всю базу. Но можно управлять составом индексируемых данных: у реквизитов объектов в конфигураторе есть свойство «Полнотекстовый поиск» (Использовать/Не использовать). Исключив лишние поля, вы уменьшите индекс и ускорите его обновление без полного отключения.

Где физически лежит индекс и сколько он занимает?

В файловой базе — в подкаталоге каталога базы (обычно с именем вида 1Cv8FTxt), в клиент-серверной — в каталоге srvinfo на сервере 1С, внутри папки конкретной базы. Объём зависит от количества текстовых данных: от десятков мегабайт на небольшой базе до десятков гигабайт на крупных учётных системах с файлами.

Нужны ли особые права для отключения?

Да. Требуются права администратора информационной базы (роль «Полные права» или право «Администрирование»). Обычный пользователь не видит раздел настроек и не может выполнить методы менеджера полнотекстового поиска.