Перейти к основному содержимому

Расписание синхронизации

Расписание синхронизации позволяет автоматически обновлять базу знаний при изменении файлов в источнике. Вместо ручного запуска индексации система периодически проверяет хранилище и обновляет изменённые документы.

Подробнее

Для настройки способа обработки документов см. раздел Пайплайны обработки.

Создание расписания

Расписание создаётся при запуске индексации на вкладке Источники:

  1. Выберите файлы/папки для индексации
  2. В правой панели Настройки индексации установите Расписание отличное от "Вручную"
  3. Нажмите Начать индексацию

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

Доступные интервалы

ИнтервалCron-выражениеОписание
Вручную--Без автоматической синхронизации
Каждые 30 секунд*/30 * * * * *Для тестирования
Каждый час0 * * * *Ежечасная синхронизация
Ежедневно0 0 * * *Синхронизация в полночь
Еженедельно0 0 * * 0Синхронизация по воскресеньям в полночь
Предупреждение

Интервал "Каждые 30 секунд" предназначен исключительно для тестирования. Не используйте его в продуктивных сценариях -- это создаст чрезмерную нагрузку на систему и хранилище.

Формат cron-выражений

Платформа поддерживает стандартный и расширенный формат cron:

5-полевой формат (стандартный)

┌──────────── минута (0 - 59)
│ ┌────────── час (0 - 23)
│ │ ┌──────── день месяца (1 - 31)
│ │ │ ┌────── месяц (1 - 12)
│ │ │ │ ┌──── день недели (0 - 6, 0 = воскресенье)
│ │ │ │ │
* * * * *

6-полевой формат (с секундами)

┌────────────── секунда (0 - 59)
│ ┌──────────── минута (0 - 59)
│ │ ┌────────── час (0 - 23)
│ │ │ ┌──────── день месяца (1 - 31)
│ │ │ │ ┌────── месяц (1 - 12)
│ │ │ │ │ ┌──── день недели (0 - 6)
│ │ │ │ │ │
* * * * * *

Примеры

ВыражениеОписание
0 * * * *Каждый час в 0 минут
0 0 * * *Каждый день в полночь
0 9 * * 1-5Каждый будний день в 9:00
0 */6 * * *Каждые 6 часов
0 0 1 * *Первый день каждого месяца
*/30 * * * * *Каждые 30 секунд (6-полевой формат)

Вкладка "Расписания"

Вкладка Расписания в разделе "База знаний" отображает все источники с настроенным автоматическим расписанием.

Колонки таблицы

КолонкаОписание
ПутьБакет и ключ S3 (путь к файлам)
РасписаниеЧеловеко-читаемое описание и cron-выражение
СтатусТекущий статус источника
Последний запускДата и время последней синхронизации
Следующий запускРасчётная дата следующей синхронизации
СозданоДата создания расписания

Статусы

СтатусОписание
В очередиОжидание следующего запуска
ВыполняетсяСинхронизация в процессе
ЗавершеноПоследняя синхронизация завершена успешно
ОшибкаПоследняя синхронизация завершилась с ошибкой

Действия

Через панель действий доступны:

  • Обновить -- обновить список расписаний
  • Запустить -- немедленно запустить синхронизацию для выбранных источников (не дожидаясь расписания)
  • История -- открыть журнал выполнений для выбранного расписания
  • Отключить -- деактивировать расписание (источник перестанет автоматически синхронизироваться)

Как работает синхронизация

Процесс

  1. По cron-расписанию система определяет, какие источники нужно синхронизировать
  2. Для каждого источника:
    • Скачивается список файлов из хранилища
    • Сравниваются хеши файлов с ранее проиндексированными
    • Новые файлы -- индексируются
    • Изменённые файлы -- переиндексируются (обновление чанков и эмбеддингов)
    • Удалённые файлы -- помечаются как удалённые
    • Неизменённые файлы -- пропускаются
  3. Результаты записываются в журнал выполнений

Результаты синхронизации

Каждое выполнение синхронизации фиксирует:

МетрикаОписание
files_createdКоличество новых проиндексированных файлов
files_modifiedКоличество обновлённых файлов
files_deletedКоличество удалённых файлов
files_unchangedКоличество неизменённых файлов (пропущены)

Журнал выполнений

Для просмотра истории синхронизаций:

  1. Выберите расписание в таблице
  2. Нажмите История в панели действий
  3. Откроется панель с историей выполнений

Каждая запись содержит:

  • Статус: Running, Completed, Failed
  • Время начала и окончания
  • Статистика: созданные, изменённые, удалённые, неизменённые файлы
  • Сообщение об ошибке (при статусе Failed)

Ручной запуск синхронизации

Для немедленного запуска синхронизации (не дожидаясь расписания):

  1. Выберите один или несколько источников в таблице расписаний
  2. Нажмите Запустить (N) в панели действий
  3. Синхронизация запустится в фоновом режиме
Совет

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

Отключение расписания

Для отключения автоматической синхронизации:

  1. Выберите расписания в таблице
  2. Нажмите Отключить (N) в панели действий
  3. Подтвердите действие

После отключения cron-выражение удаляется из источника, и автоматическая синхронизация прекращается. Ранее проиндексированные документы остаются в базе знаний.

Примечание

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

Рекомендации

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