fbpx

Общие принципы инкрементальной загрузки

Вы здесь:

Инкрементальная загрузка (загрузка изменений)

Инкрементальная загрузка обеспечивается согласованной работой SQL-сервера и BI-приложения.

На стороне SQL-сервера:

  • Предварительно администратором 1С-базы данных включается и настраивается режим отслеживания изменений.

(см. Настройка БД)

  • SQL-сервер фиксирует сведения о всех изменениях в БД (удаление, добавление или изменение записи).

Эти сведения включают последовательно возрастающий номер версии изменения..

BI-приложение может получить от SQL-сервера максимальный номер версии изменения (vNextVer) на текущий момент времени, .

На стороне BI-приложения:

  • BI-приложение хранит у себя номер версии последнего обработанного изменения .

Этот номер версии был использован при последней инкрементальной загрузке (vLastVer).

При самом первом запуске инкрементальной загрузки значение номера должно быть -1;

  • При очередной инкрементальной загрузке BI-приложение запрашивает у SQL-сервера номер версии последнего изменения (vNextVer)..
  • BI-приложение выполняет запрос к SQL-серверу для выборки и инкрементальной загрузки данных с номером версии больше или равной чем vLastVer
  • Загруженные изменения обрабатываются алгоритмом инкрементальной загрузки BI-приложения.

В основе алгоритма лежит сопоставление ключевых полей записей и ключевых полей ранее загруженных записей с учетом признака изменения записи ( изменена, добавлена, удалена) см. https://help.qlik.com/ru-RU/sense/June2018/Subsystems/Hub/Content/LoadData/use-QVD-files-incremental-load.htm

  • После успешного выполнения инкрементальной загрузки BI-приложение выполняет присваивает vLastVer = vNextVer.

Новое значение vLastVer запоминается приложением для использования во время следующей загрузки изменений.