08 Февраля 2017
Прежний механизм синхронизации основан на использовании возможностей mssql integration services. Процесс синхронизации осуществлялся путем запуска специально созданных dts пакетов (для каждой библиотеки документов). И хотя такие dts пакеты формировались автоматически, они имели ряд существенных недостатков:
- Процесс синхронизации не поддерживал инкрементальный режим в полной мере
- Ресурсоемкость и длительность выполнения, не позволяющая обеспечить актуальность данных в отчетах в течение рабочего дня
- Изменения в структуре библиотеки документов приводили к полной не работоспособности пакета и потере всех имеющихся данных
- Невозможность синхронизировать данные, перемещенные в архив
Приняв во внимание эти недочеты, был разработан новый механизм синхронизации данных. Результатом этого стала служба FlowPoint.ReportService. Новый механизм предусматривает:
- Динамическое изменение структуры таблиц в базе данных в соответствии со структурой библиотеки документов
- Частичное обновление существующих данных при изменении структуры библиотеки документов
- Инкрементальный режим работы без потери существующих данных
- Возможность синхронизации данных, перемещенных в архив
- Существенное увеличение быстродействия и небольшое потребление ресурсов *
Механизм не предусматривает удаление информации о документах, которые были удаленны из библиотеки. В данный момент эта возможность находится на стадии обсуждения и, скорее всего, будет реализована позже. Служба FlowPoint.ReportService должна быть установлена в одном экземпляре на одном из серверов фермы. Периодичность запуска процесса синхронизации настраивается и может исчисляться минутами.
* Быстродействие и потребление ресурсов зависит от источника данных. Если источником данных для библиотеки выступает архив (по факту таблица в базе данных, куда переносится xml описание элемента списка), то синхронизация большого объема данных может серьезно увеличить нагрузку на сеть, потребление оперативной памяти, а общее время выполнения может существенно вырасти.
Диспетчер служб Windows: