Интеграция в реляционную СУБД средств восстановления пропусков временных рядов в режиме реального времени
Автор: Юртин А.А.
Статья в выпуске: 1 т.14, 2025 года.
Бесплатный доступ
В статье рассмотрена проблема интеграции восстановления временных рядов в реляционную СУБД. Предложен метод ImputeDB, обеспечивающий внедрение нейросетевых моделей восстановления пропусков в реальном времени в СУБД PostgreSQL. Восстановление пропусков осуществляется с помощью триггеров (хранимых функций, автоматически выполняемые ядром СУБД при наступлении события вставки новых данных). При активации триггера пропущенные значения заменяются синтетическими, генерируемыми обученной нейросетевой моделью. Используя предложенный метод, прикладной программист базы данных может внедрить процесс восстановления пропущенных значений в стандартный цикл обработки временных рядов, не прибегая к сторонним сервисам. Предложенный метод включает набор следующих программных компонентов, реализованных как пользовательские функции (UDF, user-defined functions) на языках Python и PL/Python: Конструктор триггеров, Менеджер моделей, Хранилище моделей и Восстановитель. Конструктор триггер используется для создания триггеров, которые автоматически выполняют восстановление пропущенных значений в вставляемых данных. Менеджер моделей отвечает за обучение нейросетевых моделей. Хранилище моделей используется для сохранения моделей в файловом хранилище. Восстановитель, в свою очередь, синтезирует пропущенные значения с помощью обученных моделей. В исследовании были проведены эксперименты для оценки производительности метода ImputeDB. В ходе экспериментов измерялось время обработки вставки данных с автоматическим восстановлением пропусков в зависимости от размерности временного ряда. Эксперименты проводились в двух сценариях (одиночная и множественная вставка). В качестве моделей восстановления использовались нейросетевые методы с различными архитектурами, включая рекуррентные нейросети, автоэнкодеры и трансформеры. Результаты экспериментов продемонстрировали, что в условиях увеличения размерности временного ряда, роста накладных расходов на сетевые запросы и передачу данных, ImputeDB показывает наилучшую производительность. В частности, система обеспечила прирост эффективности на 22.5% по сравнению с аналогом, при этом сохраняя точность восстановления используемых методов.
Временной ряд, субд, восстановление пропущенных значений, нейронные сети
Короткий адрес: https://sciup.org/147248016
IDR: 147248016 | УДК: 519.254, | DOI: 10.14529/cmse250102
Integration of missing data imputation tools for time series in real-time mode into a relational DBMS
The article addresses the problem of integrating time series imputation into relational database management systems (RDBMS). A method called ImputeDB is proposed, which enables the real-time integration of neuralnetwork-based imputation models into the PostgreSQL RDBMS. The imputation of missing values is carried outthrough triggers (stored functions automatically executed by the RDBMS kernel when new data is inserted). Whena trigger is activated, missing values are replaced by synthetic ones generated by a neural network model. Using theproposed method, a database application programmer can integrate the process of imputing missing values intothe standard time series processing pipeline within the PostgreSQL RDBMS, without relying on external services.The proposed approach includes a set of components implemented as user-defined functions (UDFs) in Pythonand PL/Python: Trigger Constructor, Model Manager, Model Storage, and Imputer. The Trigger Constructoris used to create triggers that automatically perform imputation of missing values in inserted data. The ModelManager is responsible for training neural network models, while the Model Storage is used to save these modelsin a file-based repository. The Imputer, in turn, synthesizes missing values using the trained models. Experimentswere conducted to evaluate the performance of the ImputeDB method. The experiments measured the processingtime of data insertion with automatic gap imputation as a function of the time series dimensionality. Experimentswere performed under two scenarios: single and multiple insertions. Neural network-based imputation modelswith various architectures, including recurrent neural networks, autoencoders, and transformers, were employed.The experimental results demonstrated that under conditions of increasing time series dimensionality and risingoverhead from network requests and data transfer, ImputeDB exhibits superior performance. Specifically, thesystem achieved an efficiency gain of 22.5% compared to another approach, while maintaining the accuracy of theemployed imputation methods.