Интеграция в реляционную СУБД средств восстановления пропусков временных рядов в режиме реального времени

Бесплатный доступ

В статье рассмотрена проблема интеграции восстановления временных рядов в реляционную СУБД. Предложен метод ImputeDB, обеспечивающий внедрение нейросетевых моделей восстановления пропусков в реальном времени в СУБД PostgreSQL. Восстановление пропусков осуществляется с помощью триггеров (хранимых функций, автоматически выполняемые ядром СУБД при наступлении события вставки новых данных). При активации триггера пропущенные значения заменяются синтетическими, генерируемыми обученной нейросетевой моделью. Используя предложенный метод, прикладной программист базы данных может внедрить процесс восстановления пропущенных значений в стандартный цикл обработки временных рядов, не прибегая к сторонним сервисам. Предложенный метод включает набор следующих программных компонентов, реализованных как пользовательские функции (UDF, user-defined functions) на языках Python и PL/Python: Конструктор триггеров, Менеджер моделей, Хранилище моделей и Восстановитель. Конструктор триггер используется для создания триггеров, которые автоматически выполняют восстановление пропущенных значений в вставляемых данных. Менеджер моделей отвечает за обучение нейросетевых моделей. Хранилище моделей используется для сохранения моделей в файловом хранилище. Восстановитель, в свою очередь, синтезирует пропущенные значения с помощью обученных моделей. В исследовании были проведены эксперименты для оценки производительности метода ImputeDB. В ходе экспериментов измерялось время обработки вставки данных с автоматическим восстановлением пропусков в зависимости от размерности временного ряда. Эксперименты проводились в двух сценариях (одиночная и множественная вставка). В качестве моделей восстановления использовались нейросетевые методы с различными архитектурами, включая рекуррентные нейросети, автоэнкодеры и трансформеры. Результаты экспериментов продемонстрировали, что в условиях увеличения размерности временного ряда, роста накладных расходов на сетевые запросы и передачу данных, ImputeDB показывает наилучшую производительность. В частности, система обеспечила прирост эффективности на 22.5% по сравнению с аналогом, при этом сохраняя точность восстановления используемых методов.

Еще

Временной ряд, субд, восстановление пропущенных значений, нейронные сети

Короткий адрес: https://sciup.org/147248016

IDR: 147248016   |   DOI: 10.14529/cmse250102

Статья научная