В статье рассматривается программное обеспечение для архивирования технологических данных реального времени, применяемое в проектах АСУ ТП.
ГК «ИнСАТ», г. Москва
![]()
В практике системных интеграторов встречаются ситуации, когда после ввода SCADA-проекта в эксплуатацию заказчик через некоторое время отмечает снижение скорости работы системы. Это может проявляться в увеличении времени обновления экранов с историческими данными, замедлении обработки запросов или быстром заполнении хранилища информации. При значительных объёмах архивируемых данных специалистам приходится регулярно расширять хранилище или переносить информацию на внешние носители, что усложняет эксплуатацию и повышает риски отказов. В результате сегмент архивирования становится уязвимым элементом технологической инфраструктуры, так как напрямую влияет на доступность данных для оперативного анализа и принятия управленческих решений. В качестве варианта решения задач, связанных с высокой скоростью записи и устойчивым хранением данных реального времени, может применяться программный продукт «АВАДС Сервер архивирования». Он предназначен для построения систем хранения технологической информации в проектах, где предъявляются повышенные требования к производительности и надёжности обработки больших объёмов данных.
Технология для СУБД временных рядов (TSDB)
Разработчиками компании «АВАДС СОФТ» (входит в группу компаний «ИнСАТ») был проведен глубокий анализ требований к сбору, хранению и использованию технологических данных в оперативном контуре управления производственными процессами современных АСУ. Ключевыми критериями для оценки эффективности разрабатываемого решения стали высокие показатели по надежности, скорости записи и доступа к данным, а также большая глубина их хранения.
Основой решения стала технология SSDS (Solid Segment Data Storage), разработанная и запатентованная компанией «АВАДС СОФТ» (патент РФ № 2793082 «Способ хранения и извлечения данных»). Технология SSDS включает в себя три основные составляющие:
- оригинальная организация данных;
- уникальная и очень компактная система индексации;
- мощная система кеширования.
SSDS обеспечивает высочайшую скорость записи и извлечения данных (несколько миллионов записей в секунду). Кроме того, технология SSDS позволяет очень быстро восстановить целостность базы при частичном повреждении носителя или индекса.
База данных временных рядов – это специализированная программная среда, оптимизированная для хранения и обработки данных с помощью связанных пар «время – значение». В некоторых областях временные ряды могут называться профилями, кривыми, трассами или трендами. Они активно используются в промышленности для хранения измеренных с помощью различных датчиков значений.
Для эффективного управления во многих случаях хранилища данных временных рядов используют алгоритмы сжатия. Хотя данные временных рядов можно хранить в базах различного типа, структура этих систем, в которых время является ключевым индексом, существенно отличается от реляционных баз данных, где дискретные взаимосвязи упрощаются с помощью ссылочных моделей.
«АВАДС Historian»: архитектура, классы данных и интерфейсы
«АВАДС Historian» (сервер архивирования) – это клиент-серверное кросс-платформенное приложение, которое включает в себя сервер баз данных и клиент администрирования. Сервер обслуживает запросы клиентов, сохраняет полученные данные, предоставляет их по запросу, выполняет бекапирование и математическую обработку. Клиент администрирования предназначен для настройки сервера, контроля за его работой и для просмотра сохраненных данных в табличном виде и в виде трендов трендов (рис. 1). АВАДС Historian не имеет ограничений по числу баз и клиентов, кроме лицензионных, а также накладываемых возможностями вычислительных средств, на которых он установлен.

Рис. 1. Интерфейс «АВАДС Historian» (сервер архивирования): отображение групповых трендов
Сервер архивирования может сохранять следующие классы данных:
- атомарные данные – данные любых типов, размер которых не превышает 8 байт. К таким относятся, например, bool, int, long, dlong, float, dfloat и т. д.;
- данные типа blob – данные произвольного размера. Это могут быть, например, структуры, массивы, тексты, изображения и пр. Назначение и структуру записанного в blob массива байтов определяет приложение, которое его записывает.
Механизмы хранения и доступа к данным обоих типов одинаковы. Отличие состоит в логике их обработки. Такой унифицированный подход позволяет обеспечить одинаково высокую скорость сохранения и доступа к данным независимо от их типа.
Сервер архивирования имеет три механизма взаимодействия с клиентами:
- API. Протокол AVADS TCP, который обеспечивает высокоскоростные методы передачи и доступа к данным, а также методы управления сервером, реализованные в рамках TCP/IP-стека;
- JSON. Протокол AVADS WEB – это WEB-API, реализованный через веб-сокет. Он проще в реализации, но медленнее в работе. Его не следует использовать, если требуется максимальное быстродействие;
- OPC UA. Для взаимодействия по протоколу OPC UA разработана специальная программа OPC-DB-шлюз. Шлюз транслирует запросы протокола OPC UA в AVADS TCP.
Сервер архивирования может взаимодействовать с клиентами как в рамках одного компьютера, так и по сети. Число подключенных клиентов ограничено лицензией.
Зацикливание и глубина хранения
Сервер архивирования обеспечивает непрерывное сохранение данных даже при исчерпании свободного пространства на диске. Это достигается за счет функции зацикливания.
Зацикливание баз данных может выполняться в двух режимах:
- по заданной глубине хранения данных;
- по заданному размеру базы или исчерпанию свободного места на диске.
Глубина хранения может устанавливаться для базы целиком, для группы тегов или индивидуально для каждого тега. Для эффективного использования емкости хранилища рекомендуется применять индивидуальную настройку наиболее значимых тегов или группы тегов. Для них можно будет установить более высокое значение по ограничению объема хранимых данных. При достижении заданного ограничения все новые записи будут записываться поверх самых старых. Сервер архивирования спроектирован так, что зацикливание архива слабо влияет на скорость записи и выборки данных.
Производительность
Скорость записи
Тестирование проводилось на различном оборудовании: одноплатном микрокомпьютере, ноутбуке, стационарном компьютере средней производительности, современном стационарном компьютере повышенной производительности. На нем запускался «АВАДС Сервер архивирования», а на другом, удаленном компьютере включался имитатор значений тегов, который 10 раз в секунду по TCP/IP передавал серверу различные значения тегов (от 30 000 до 100 000). База, в которую записывались данные, работала в режиме зацикливания (после заполнения всего объема носителя новые данные записывались поверх старых). Результаты тестов приведены в табл. 1.
Таблица 1. Результаты тестирования «АВАДС Сервер архивирования» на разном оборудовании (увеличить изображение)

По результатам испытаний установлено, что «АВАДС Сервер архивирования» может функционировать на оборудовании с базовыми техническими характеристиками, обеспечивая при этом стабильную работу. Зафиксированы невысокие значения использования оперативной памяти и загрузки процессорных ресурсов. На современном аппаратном обеспечении измеренная скорость записи данных достигала порядка 2,5 млн записей в секунду. Такой показатель позволяет рассматривать систему как пригодную для применения в масштабных проектах АСУ ТП, требующих обработки больших массивов данных.
Скорость выборки
При испытаниях на производительность чтения серверу архивирования посылались запросы на выборку для 100 случайно выбранных тегов по 10 000 записей. На диаграмме (рис. 2) – результаты теста скорости выборки.

Рис. 2. Скорость считывания данных из сервера архивирования ограничена преимущественно типом носителя. Скорость доступа старого HDD (~12 мс) оказывает существенное влияние на скорость выборки. С уменьшением этого значения скорость значительно возрастает, а для кеша практически отсутствует
Бекапирование
Сервер архивирования позволяет сохранять в файл бекапа значения произвольного набора параметров за заданный интервал времени. Затем данные из бекапа можно восстановить в ту же или другую базу данных. В частном случае можно все теги сохранять раз в месяц на сменный носитель. Это обеспечит защиту от потери данных. Возможность сохранить бекап позволяет вести аналитику на отдельном компьютере, не нагружая дополнительными запросами сервер, обеспечивающий сохранение данных. Сервер архивирования может восстанавливать бекап одновременно с записью новых данных в базу. Причем процесс восстановления почти не влияет на производительность сервера.
Интеграция с MasterSCADA 4D
Самая популярная российская SCADA-система MasterSCADA 4D позволяет провести настройку и архивацию в «АВАДС Сервер архивирования». Такое решение привлекательно для крупных проектов, где генерируется большое число тегов. Отсутствие деградации производительности сервера архивирования при работе с большими базами данных позволяет работать без тормозов и зависаний, характерных для других типов баз (SQLite или PostgreSQL) при достижении ими критических размеров.
Реестр российского ПО
С первого и до последнего байта программа является российским программным продуктом, что подтверждено ее внесением в реестр Минкомсвязи (класс «Средства управления базами данных»).

Опубликовано в журнале «ИСУП» № 5(119)_2025
В. В. Решетников, руководитель
отдела маркетинга,
ГК «ИнСАТ», г. Москва,
тел.: +7 (495) 989-2249,
e-mail: scada@insat.ru
Иллюстрации предоставлены компанией ГК «ИнСАТ»


_small.jpg)
